From 36705c7c02620912f0794fe77fe948fa085034f6 Mon Sep 17 00:00:00 2001 From: GitHub gen-configs Action Date: Wed, 20 Mar 2024 21:09:51 +0000 Subject: [PATCH] Auto-generated configs and docs --- ...ration_generated_structures_alphax-2chan.h | 2576 +++++++------ ...ration_generated_structures_alphax-4chan.h | 2576 +++++++------ ...ion_generated_structures_alphax-4chan_f7.h | 2576 +++++++------ ...n_generated_structures_alphax-8chan-revA.h | 2576 +++++++------ ...ration_generated_structures_alphax-8chan.h | 2576 +++++++------ ...ion_generated_structures_alphax-8chan_f7.h | 2576 +++++++------ ...ation_generated_structures_at_start_f435.h | 2576 +++++++------ ...configuration_generated_structures_atlas.h | 2576 +++++++------ ...tion_generated_structures_f407-discovery.h | 2576 +++++++------ ...tion_generated_structures_f429-discovery.h | 2576 +++++++------ ...tion_generated_structures_f469-discovery.h | 2576 +++++++------ ...ation_generated_structures_frankenso_na6.h | 2576 +++++++------ ...nfiguration_generated_structures_haba208.h | 2576 +++++++------ ...ation_generated_structures_hellen-112-17.h | 2576 +++++++------ ...ation_generated_structures_hellen-gm-e67.h | 2576 +++++++------ ...tion_generated_structures_hellen-honda-k.h | 2576 +++++++------ ...guration_generated_structures_hellen-nb1.h | 2576 +++++++------ ...ion_generated_structures_hellen121nissan.h | 2576 +++++++------ ...ration_generated_structures_hellen121vag.h | 2576 +++++++------ ...iguration_generated_structures_hellen128.h | 2576 +++++++------ ...on_generated_structures_hellen154hyundai.h | 2576 +++++++------ ...generated_structures_hellen154hyundai_f7.h | 2576 +++++++------ ...figuration_generated_structures_hellen72.h | 2576 +++++++------ ...figuration_generated_structures_hellen81.h | 2576 +++++++------ ...uration_generated_structures_hellen88bmw.h | 2576 +++++++------ ...iguration_generated_structures_hellenNA6.h | 2576 +++++++------ ...ration_generated_structures_hellenNA8_96.h | 2576 +++++++------ ...configuration_generated_structures_m74_9.h | 2576 +++++++------ ...onfiguration_generated_structures_mre_f4.h | 2576 +++++++------ ...onfiguration_generated_structures_mre_f7.h | 2576 +++++++------ ...uration_generated_structures_nucleo_f413.h | 2576 +++++++------ ...tion_generated_structures_prometheus_405.h | 2576 +++++++------ ...tion_generated_structures_prometheus_469.h | 2576 +++++++------ ...guration_generated_structures_proteus_f4.h | 2576 +++++++------ ...guration_generated_structures_proteus_f7.h | 2576 +++++++------ ...guration_generated_structures_proteus_h7.h | 2576 +++++++------ ..._configuration_generated_structures_s105.h | 2576 +++++++------ ...ion_generated_structures_small-can-board.h | 2576 +++++++------ ...on_generated_structures_stm32f429_nucleo.h | 2576 +++++++------ ...on_generated_structures_stm32f767_nucleo.h | 2576 +++++++------ ...on_generated_structures_stm32h743_nucleo.h | 2576 +++++++------ ...configuration_generated_structures_t-b-g.h | 2576 +++++++------ ...figuration_generated_structures_tdg-pdm8.h | 2576 +++++++------ ...configuration_generated_structures_uaefi.h | 2576 +++++++------ .../generated/rusefi_generated_alphax-2chan.h | 14 +- .../generated/rusefi_generated_alphax-4chan.h | 14 +- .../rusefi_generated_alphax-4chan_f7.h | 14 +- .../rusefi_generated_alphax-8chan-revA.h | 14 +- .../generated/rusefi_generated_alphax-8chan.h | 14 +- .../rusefi_generated_alphax-8chan_f7.h | 14 +- .../rusefi_generated_at_start_f435.h | 14 +- .../generated/rusefi_generated_atlas.h | 14 +- .../rusefi_generated_f407-discovery.h | 14 +- .../rusefi_generated_f429-discovery.h | 14 +- .../rusefi_generated_f469-discovery.h | 14 +- .../rusefi_generated_frankenso_na6.h | 14 +- .../generated/rusefi_generated_haba208.h | 14 +- .../rusefi_generated_hellen-112-17.h | 14 +- .../rusefi_generated_hellen-gm-e67.h | 14 +- .../rusefi_generated_hellen-honda-k.h | 14 +- .../generated/rusefi_generated_hellen-nb1.h | 14 +- .../rusefi_generated_hellen121nissan.h | 14 +- .../generated/rusefi_generated_hellen121vag.h | 14 +- .../generated/rusefi_generated_hellen128.h | 14 +- .../rusefi_generated_hellen154hyundai.h | 14 +- .../rusefi_generated_hellen154hyundai_f7.h | 14 +- .../generated/rusefi_generated_hellen72.h | 14 +- .../generated/rusefi_generated_hellen81.h | 14 +- .../generated/rusefi_generated_hellen88bmw.h | 14 +- .../generated/rusefi_generated_hellenNA6.h | 14 +- .../generated/rusefi_generated_hellenNA8_96.h | 14 +- .../generated/rusefi_generated_m74_9.h | 14 +- .../generated/rusefi_generated_mre_f4.h | 14 +- .../generated/rusefi_generated_mre_f7.h | 14 +- .../generated/rusefi_generated_nucleo_f413.h | 14 +- .../rusefi_generated_prometheus_405.h | 14 +- .../rusefi_generated_prometheus_469.h | 14 +- .../generated/rusefi_generated_proteus_f4.h | 14 +- .../generated/rusefi_generated_proteus_f7.h | 14 +- .../generated/rusefi_generated_proteus_h7.h | 14 +- .../generated/rusefi_generated_s105.h | 14 +- .../rusefi_generated_small-can-board.h | 14 +- .../rusefi_generated_stm32f429_nucleo.h | 14 +- .../rusefi_generated_stm32f767_nucleo.h | 14 +- .../rusefi_generated_stm32h743_nucleo.h | 14 +- .../generated/rusefi_generated_t-b-g.h | 14 +- .../generated/rusefi_generated_tdg-pdm8.h | 14 +- .../generated/rusefi_generated_uaefi.h | 14 +- .../generated/signature_alphax-2chan.h | 4 +- .../generated/signature_alphax-4chan.h | 4 +- .../generated/signature_alphax-4chan_f7.h | 4 +- .../generated/signature_alphax-8chan-revA.h | 4 +- .../generated/signature_alphax-8chan.h | 4 +- .../generated/signature_alphax-8chan_f7.h | 4 +- .../generated/signature_at_start_f435.h | 4 +- .../controllers/generated/signature_atlas.h | 4 +- .../generated/signature_f407-discovery.h | 4 +- .../generated/signature_f429-discovery.h | 4 +- .../generated/signature_f469-discovery.h | 4 +- .../generated/signature_frankenso_na6.h | 4 +- .../controllers/generated/signature_haba208.h | 4 +- .../generated/signature_hellen-112-17.h | 4 +- .../generated/signature_hellen-gm-e67.h | 4 +- .../generated/signature_hellen-honda-k.h | 4 +- .../generated/signature_hellen-nb1.h | 4 +- .../generated/signature_hellen121nissan.h | 4 +- .../generated/signature_hellen121vag.h | 4 +- .../generated/signature_hellen128.h | 4 +- .../generated/signature_hellen154hyundai.h | 4 +- .../generated/signature_hellen154hyundai_f7.h | 4 +- .../generated/signature_hellen72.h | 4 +- .../generated/signature_hellen81.h | 4 +- .../generated/signature_hellen88bmw.h | 4 +- .../generated/signature_hellenNA6.h | 4 +- .../generated/signature_hellenNA8_96.h | 4 +- .../controllers/generated/signature_m74_9.h | 4 +- .../controllers/generated/signature_mre_f4.h | 4 +- .../controllers/generated/signature_mre_f7.h | 4 +- .../generated/signature_nucleo_f413.h | 4 +- .../generated/signature_prometheus_405.h | 4 +- .../generated/signature_prometheus_469.h | 4 +- .../generated/signature_proteus_f4.h | 4 +- .../generated/signature_proteus_f7.h | 4 +- .../generated/signature_proteus_h7.h | 4 +- .../controllers/generated/signature_s105.h | 4 +- .../generated/signature_small-can-board.h | 4 +- .../generated/signature_stm32f429_nucleo.h | 4 +- .../generated/signature_stm32f767_nucleo.h | 4 +- .../generated/signature_stm32h743_nucleo.h | 4 +- .../controllers/generated/signature_t-b-g.h | 4 +- .../generated/signature_tdg-pdm8.h | 4 +- .../controllers/generated/signature_uaefi.h | 4 +- .../lua/generated/value_lookup_generated.cpp | 234 +- .../lua/generated/value_lookup_generated.md | 88 +- firmware/tunerstudio/generated/rusefi.ini | 2913 ++++++++------- .../generated/rusefi_alphax-2chan.ini | 2913 ++++++++------- .../generated/rusefi_alphax-4chan.ini | 2913 ++++++++------- .../generated/rusefi_alphax-4chan_f7.ini | 2913 ++++++++------- .../generated/rusefi_alphax-8chan-revA.ini | 2913 ++++++++------- .../generated/rusefi_alphax-8chan.ini | 2919 ++++++++------- .../generated/rusefi_alphax-8chan_f7.ini | 2919 ++++++++------- .../generated/rusefi_at_start_f435.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_atlas.ini | 2913 ++++++++------- .../generated/rusefi_f407-discovery.ini | 2913 ++++++++------- .../generated/rusefi_f429-discovery.ini | 2913 ++++++++------- .../generated/rusefi_f469-discovery.ini | 2913 ++++++++------- .../generated/rusefi_frankenso_na6.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_haba208.ini | 2913 ++++++++------- .../generated/rusefi_hellen-112-17.ini | 2913 ++++++++------- .../generated/rusefi_hellen-gm-e67.ini | 2913 ++++++++------- .../generated/rusefi_hellen-honda-k.ini | 2911 ++++++++------- .../generated/rusefi_hellen-nb1.ini | 2913 ++++++++------- .../generated/rusefi_hellen121nissan.ini | 2913 ++++++++------- .../generated/rusefi_hellen121vag.ini | 2913 ++++++++------- .../generated/rusefi_hellen128.ini | 2913 ++++++++------- .../generated/rusefi_hellen154hyundai.ini | 2913 ++++++++------- .../generated/rusefi_hellen154hyundai_f7.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_hellen72.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_hellen81.ini | 2913 ++++++++------- .../generated/rusefi_hellen88bmw.ini | 2913 ++++++++------- .../generated/rusefi_hellenNA6.ini | 2913 ++++++++------- .../generated/rusefi_hellenNA8_96.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_m74_9.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_mre_f4.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_mre_f7.ini | 2913 ++++++++------- .../generated/rusefi_nucleo_f413.ini | 2913 ++++++++------- .../generated/rusefi_prometheus_405.ini | 2913 ++++++++------- .../generated/rusefi_prometheus_469.ini | 2913 ++++++++------- .../generated/rusefi_proteus_f4.ini | 2913 ++++++++------- .../generated/rusefi_proteus_f7.ini | 2913 ++++++++------- .../generated/rusefi_proteus_h7.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_s105.ini | 2913 ++++++++------- .../generated/rusefi_small-can-board.ini | 2913 ++++++++------- .../generated/rusefi_stm32f429_nucleo.ini | 2913 ++++++++------- .../generated/rusefi_stm32f767_nucleo.ini | 2913 ++++++++------- .../generated/rusefi_stm32h743_nucleo.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_t-b-g.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_tdg-pdm8.ini | 2913 ++++++++------- .../tunerstudio/generated/rusefi_uaefi.ini | 2913 ++++++++------- .../com/rusefi/config/generated/Fields.java | 3270 ++++++++--------- 180 files changed, 122657 insertions(+), 126166 deletions(-) diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-2chan.h b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-2chan.h index 82ef260208..0c930c2619 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-2chan.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-2chan.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 Tue Mar 19 17:57:51 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:55 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:51 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:55 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-4chan.h b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-4chan.h index f8b20df946..f1278ece14 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-4chan.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-4chan.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 Tue Mar 19 17:57:59 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:04 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:59 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:04 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-4chan_f7.h b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-4chan_f7.h index add5cd9bbc..cf5ddc52c7 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-4chan_f7.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-4chan_f7.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 Tue Mar 19 17:58:01 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:05 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:01 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:05 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan-revA.h b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan-revA.h index 9d83ea993c..cb9fb97ae6 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan-revA.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan-revA.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 Tue Mar 19 17:57:52 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:57 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:52 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:57 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan.h b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan.h index 05d23afa98..14bc53bd9a 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan.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 Tue Mar 19 17:57:47 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:51 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1332 + * offset 1256 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1396 + * offset 1320 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1398 + * offset 1322 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1400 bit 0 */ + offset 1324 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1400 bit 1 */ + offset 1324 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 1400 bit 2 */ + offset 1324 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1400 bit 3 */ + offset 1324 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1400 bit 4 */ + offset 1324 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1400 bit 5 */ + offset 1324 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1400 bit 6 */ + offset 1324 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1400 bit 7 */ + offset 1324 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1400 bit 8 */ + offset 1324 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1400 bit 9 */ + offset 1324 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1400 bit 10 */ + offset 1324 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1400 bit 11 */ + offset 1324 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1400 bit 12 */ + offset 1324 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1400 bit 13 */ + offset 1324 bit 13 */ bool isAlternatorControlEnabled : 1 {}; /** * https://wiki.rusefi.com/Trigger-Configuration-Guide * This setting flips the signal from the primary engine speed sensor. - offset 1400 bit 14 */ + offset 1324 bit 14 */ bool invertPrimaryTriggerSignal : 1 {}; /** * https://wiki.rusefi.com/Trigger-Configuration-Guide * This setting flips the signal from the secondary engine speed sensor. - offset 1400 bit 15 */ + offset 1324 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1400 bit 16 */ + offset 1324 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 1400 bit 17 */ + offset 1324 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1400 bit 18 */ + offset 1324 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1400 bit 19 */ + offset 1324 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1400 bit 20 */ + offset 1324 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1400 bit 21 */ + offset 1324 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1400 bit 22 */ + offset 1324 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1400 bit 23 */ + offset 1324 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1400 bit 24 */ + offset 1324 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1400 bit 25 */ + offset 1324 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1400 bit 26 */ + offset 1324 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1400 bit 27 */ + offset 1324 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1400 bit 28 */ + offset 1324 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1400 bit 29 */ + offset 1324 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1400 bit 30 */ + offset 1324 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1400 bit 31 */ + offset 1324 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1404 + * offset 1328 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1405 + * offset 1329 */ - uint8_t alignmentFill_at_1405[1]; + uint8_t alignmentFill_at_1329[1]; /** * A/C button input - * offset 1406 + * offset 1330 */ switch_input_pin_e acSwitch; /** - * offset 1408 + * offset 1332 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1409 + * offset 1333 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1410 + * offset 1334 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1411 + * offset 1335 */ - uint8_t alignmentFill_at_1411[1]; + uint8_t alignmentFill_at_1335[1]; /** - offset 1412 bit 0 */ + offset 1336 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1412 bit 1 */ + offset 1336 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 1412 bit 2 */ + offset 1336 bit 2 */ bool isCylinderCleanupEnabled : 1 {}; /** * Should we use tables to vary tau/beta based on CLT/MAP, or just with fixed values? - offset 1412 bit 3 */ + offset 1336 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 1412 bit 4 */ + offset 1336 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1412 bit 5 */ + offset 1336 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 1412 bit 6 */ + offset 1336 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 1412 bit 7 */ + offset 1336 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1412 bit 8 */ + offset 1336 bit 8 */ bool isWaveAnalyzerEnabled : 1 {}; /** * This activates a separate fuel table for Idle, this allows fine tuning of the idle fuelling. - offset 1412 bit 9 */ + offset 1336 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1412 bit 10 */ + offset 1336 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 1412 bit 11 */ + offset 1336 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1412 bit 12 */ + offset 1336 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1412 bit 13 */ + offset 1336 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 1412 bit 14 */ + offset 1336 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1412 bit 15 */ + offset 1336 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 1412 bit 16 */ + offset 1336 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 1412 bit 17 */ + offset 1336 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 1412 bit 18 */ + offset 1336 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 1412 bit 19 */ + offset 1336 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1412 bit 20 */ + offset 1336 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1412 bit 21 */ + offset 1336 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1412 bit 22 */ + offset 1336 bit 22 */ bool isPhaseSyncRequiredForIgnition : 1 {}; /** * If enabled, use a curve for RPM limit (based on coolant temperature) instead of a constant value. - offset 1412 bit 23 */ + offset 1336 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 1412 bit 24 */ + offset 1336 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 1412 bit 25 */ + offset 1336 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 1412 bit 26 */ + offset 1336 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1412 bit 27 */ + offset 1336 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 1412 bit 28 */ + offset 1336 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1412 bit 29 */ + offset 1336 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1412 bit 30 */ + offset 1336 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1412 bit 31 */ + offset 1336 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1416 + * offset 1340 */ uint32_t engineChartSize; /** * units: mult - * offset 1420 + * offset 1344 */ float turboSpeedSensorMultiplier; /** - * offset 1424 + * offset 1348 */ 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 1432 + * offset 1356 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1434 + * offset 1358 */ int16_t warningPeriod; /** * units: angle - * offset 1436 + * offset 1360 */ float knockDetectionWindowStart; /** * units: angle - * offset 1440 + * offset 1364 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1444 + * offset 1368 */ float idleStepperReactionTime; /** * units: count - * offset 1448 + * offset 1372 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1452 + * offset 1376 */ 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 1456 + * offset 1380 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1460 + * offset 1384 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1464 + * offset 1388 */ float wwaeTau; /** - * offset 1468 + * offset 1392 */ pid_s alternatorControl; /** - * offset 1488 + * offset 1412 */ pid_s etb; /** - * offset 1508 + * offset 1432 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1512 + * offset 1436 */ int16_t airTaperRpmRange; /** - * offset 1514 + * offset 1438 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1516 + * offset 1440 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1518 + * offset 1442 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1520 + * offset 1444 */ output_pin_e starterControlPin; /** - * offset 1522 + * offset 1446 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1523 + * offset 1447 */ - uint8_t alignmentFill_at_1523[1]; + uint8_t alignmentFill_at_1447[1]; /** - * offset 1524 + * offset 1448 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1526 + * offset 1450 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1527 + * offset 1451 */ - uint8_t alignmentFill_at_1527[1]; + uint8_t alignmentFill_at_1451[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1528 + * offset 1452 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1532 + * offset 1456 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1536 + * offset 1460 */ 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 1538 + * offset 1462 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1540 + * offset 1464 */ 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 1560 + * offset 1484 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1564 + * offset 1488 */ Gpio binarySerialTxPin; /** - * offset 1566 + * offset 1490 */ Gpio binarySerialRxPin; /** - * offset 1568 + * offset 1492 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1572 + * offset 1496 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1574 + * offset 1498 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1576 + * offset 1500 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1580 + * offset 1504 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1584 + * offset 1508 */ int16_t startUpFuelPumpDuration; /** * If the RPM closer to target than this value, disable closed loop idle correction to prevent oscillation * units: RPM - * offset 1586 + * offset 1510 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1588 + * offset 1512 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1592 bit 0 */ + offset 1516 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1592 bit 1 */ + offset 1516 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1592 bit 2 */ + offset 1516 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1592 bit 3 */ + offset 1516 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1592 bit 4 */ + offset 1516 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1592 bit 5 */ + offset 1516 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1592 bit 6 */ + offset 1516 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1592 bit 7 */ + offset 1516 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1592 bit 8 */ + offset 1516 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1592 bit 9 */ + offset 1516 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1592 bit 10 */ + offset 1516 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1592 bit 11 */ + offset 1516 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1592 bit 12 */ + offset 1516 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1592 bit 13 */ + offset 1516 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1592 bit 14 */ + offset 1516 bit 14 */ bool is_enabled_spi_6 : 1 {}; /** * AEM X-Series EGT gauge kit or rusEFI EGT sensor from Wideband controller - offset 1592 bit 15 */ + offset 1516 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1592 bit 16 */ + offset 1516 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1592 bit 17 */ + offset 1516 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1592 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1516 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1592 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1516 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1592 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1516 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1592 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1516 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1592 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1516 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1592 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1516 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1592 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1516 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1592 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1516 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1592 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1516 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1592 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1516 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1592 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1516 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1592 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1516 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1592 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1516 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1592 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1516 bit 31 */ + bool unusedBit_504_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 1596 + * offset 1520 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1598 + * offset 1522 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1600 + * offset 1524 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1602 + * offset 1526 */ Gpio auxSerialRxPin; /** - * offset 1604 + * offset 1528 */ 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 1606 + * offset 1530 */ scaled_channel tpsAccelLookback; /** * Below this speed, disable DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears. * units: kph - * offset 1607 + * offset 1531 */ uint8_t coastingFuelCutVssLow; /** * Above this speed, allow DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears. * units: kph - * offset 1608 + * offset 1532 */ 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 1609 + * offset 1533 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1610 + * offset 1534 */ - uint8_t alignmentFill_at_1610[2]; + uint8_t alignmentFill_at_1534[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 1612 + * offset 1536 */ float tpsAccelEnrichmentThreshold; /** - * offset 1616 + * offset 1540 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1620 + * offset 1544 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1621 + * offset 1545 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1622 + * offset 1546 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1623 + * offset 1547 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1624 + * offset 1548 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1628 + * offset 1552 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1632 + * offset 1556 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1636 + * offset 1560 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1640 + * offset 1564 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1644 + * offset 1568 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1648 + * offset 1572 */ 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 1649 + * offset 1573 */ ve_override_e veOverrideMode; /** - * offset 1650 + * offset 1574 */ 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 1651 + * offset 1575 */ load_override_e afrOverrideMode; /** * units: A - * offset 1652 + * offset 1576 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1653 + * offset 1577 */ scaled_channel mc33_hpfp_i_hold; /** * How long to deactivate power when hold current is reached before applying power again * units: us - * offset 1654 + * offset 1578 */ uint8_t mc33_hpfp_i_hold_off; /** * Maximum amount of time the solenoid can be active before assuming a programming error * units: ms - * offset 1655 + * offset 1579 */ uint8_t mc33_hpfp_max_hold; /** * Enable if DC-motor driver (H-bridge) inverts the signals (eg. RZ7899 on Hellen boards) - offset 1656 bit 0 */ + offset 1580 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1656 bit 1 */ + offset 1580 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1656 bit 2 */ + offset 1580 bit 2 */ bool can2OpenBLT : 1 {}; /** * Select whether to configure injector flow in volumetric flow (defualt, cc/min) or mass flow (g/s). - offset 1656 bit 3 */ + offset 1580 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1656 bit 4 */ + offset 1580 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1656 bit 5 */ + offset 1580 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1656 bit 6 */ + offset 1580 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1656 bit 7 */ + offset 1580 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1656 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1580 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1656 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1580 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1656 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1580 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1656 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1580 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1656 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1580 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1656 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1580 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1656 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1580 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1656 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1580 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1656 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1580 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1656 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1580 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1656 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1580 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1656 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1580 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1656 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1580 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1656 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1580 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1656 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1580 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1656 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1580 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1656 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1580 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1656 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1580 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1656 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1580 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1656 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1580 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1656 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1580 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1656 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1580 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1656 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1580 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1656 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1580 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1660 + * offset 1584 */ uint8_t camDecoder2jzPosition; /** - * offset 1661 + * offset 1585 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1662 + * offset 1586 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1664 + * offset 1588 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1665 + * offset 1589 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1666 + * offset 1590 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1667 + * offset 1591 */ - uint8_t alignmentFill_at_1667[1]; + uint8_t alignmentFill_at_1591[1]; /** * set_can2_tx_pin X - * offset 1668 + * offset 1592 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1670 + * offset 1594 */ Gpio can2RxPin; /** - * offset 1672 + * offset 1596 */ pin_output_mode_e starterControlPinMode; /** - * offset 1673 + * offset 1597 */ 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 1674 + * offset 1598 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1675 + * offset 1599 */ injector_pressure_type_e injectorPressureType; /** - * offset 1676 + * offset 1600 */ output_pin_e hpfpValvePin; /** - * offset 1678 + * offset 1602 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1679 + * offset 1603 */ - uint8_t alignmentFill_at_1679[1]; + uint8_t alignmentFill_at_1603[1]; /** * MAP value above which fuel is cut in case of overboost. * Set to 0 to disable overboost cut. * units: kPa (absolute) - * offset 1680 + * offset 1604 */ float boostCutPressure; /** * units: kg/h - * offset 1684 + * offset 1608 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1700 + * offset 1624 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1716 + * offset 1640 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1720 + * offset 1644 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1724 + * offset 1648 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1728 + * offset 1652 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1732 + * offset 1656 */ output_pin_e vvtPins[CAM_INPUTS_COUNT]; - /** - * offset 1740 - */ - pin_output_mode_e sdCardCsPinMode; - /** - * need 4 byte alignment - * units: units - * offset 1741 - */ - uint8_t alignmentFill_at_1741[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 1744 + * offset 1664 */ int crankingIACposition; /** - * offset 1748 + * offset 1668 */ float tChargeMinRpmMinTps; /** - * offset 1752 + * offset 1672 */ float tChargeMinRpmMaxTps; /** - * offset 1756 + * offset 1676 */ float tChargeMaxRpmMinTps; /** - * offset 1760 + * offset 1680 */ float tChargeMaxRpmMaxTps; /** - * offset 1764 + * offset 1684 */ 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 1766 + * offset 1686 */ 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 1767 + * offset 1687 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1768 + * offset 1688 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1772 + * offset 1692 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1774 + * offset 1694 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1775 + * offset 1695 */ scaled_channel primingDelay; /** - * offset 1776 + * offset 1696 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1784 + * offset 1704 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1808 + * offset 1728 */ tle8888_mode_e tle8888mode; /** - * offset 1809 + * offset 1729 */ 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 1810 + * offset 1730 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1811 + * offset 1731 */ 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 1812 + * offset 1732 */ float fuelReferencePressure; /** * units: mult - * offset 1816 + * offset 1736 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1960 + * offset 1880 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1984 + * offset 1904 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 2008 + * offset 1928 */ ThermistorConf auxTempSensor1; /** - * offset 2040 + * offset 1960 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2072 + * offset 1992 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2074 + * offset 1994 */ int16_t etbFreq; /** - * offset 2076 + * offset 1996 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2096 + * offset 2016 */ stepper_num_micro_steps_e stepperNumMicroSteps; /** * Use to limit the current when the stepper motor is idle, not moving (100% = no limit) * units: % - * offset 2097 + * offset 2017 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2098 + * offset 2018 */ uint8_t stepperMaxDutyCycle; /** - * offset 2099 + * offset 2019 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2100 + * offset 2020 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2148 + * offset 2068 */ float idlePidActivationTime; /** - * offset 2152 + * offset 2072 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2153 + * offset 2073 */ pin_mode_e spi1MosiMode; /** - * offset 2154 + * offset 2074 */ pin_mode_e spi1MisoMode; /** - * offset 2155 + * offset 2075 */ pin_mode_e spi2SckMode; /** - * offset 2156 + * offset 2076 */ pin_mode_e spi2MosiMode; /** - * offset 2157 + * offset 2077 */ pin_mode_e spi2MisoMode; /** - * offset 2158 + * offset 2078 */ pin_mode_e spi3SckMode; /** - * offset 2159 + * offset 2079 */ pin_mode_e spi3MosiMode; /** - * offset 2160 + * offset 2080 */ pin_mode_e spi3MisoMode; /** - * offset 2161 + * offset 2081 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2162 + * offset 2082 */ Gpio mc33816_rstb; /** - * offset 2164 + * offset 2084 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2166 + * offset 2086 */ switch_input_pin_e brakePedalPin; - /** - * offset 2168 - */ - pin_input_mode_e brakePedalPinMode; - /** - * need 4 byte alignment - * units: units - * offset 2169 - */ - uint8_t alignmentFill_at_2169[3]; /** * VVT output PID * TODO: rename to vvtPid - * offset 2172 + * offset 2088 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2212 + * offset 2128 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2244 + * offset 2160 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2252 + * offset 2168 */ linear_sensor_s oilPressure; /** - * offset 2272 + * offset 2188 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2273 + * offset 2189 */ - uint8_t alignmentFill_at_2273[1]; + uint8_t alignmentFill_at_2189[1]; /** - * offset 2274 + * offset 2190 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2276 + * offset 2192 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2277 + * offset 2193 */ uint8_t fan2OffTemperature; /** - * offset 2278 + * offset 2194 */ Gpio stepperEnablePin; /** - * offset 2280 + * offset 2196 */ Gpio tle8888_cs; /** - * offset 2282 + * offset 2198 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2283 + * offset 2199 */ - uint8_t alignmentFill_at_2283[1]; + uint8_t alignmentFill_at_2199[1]; /** - * offset 2284 + * offset 2200 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2286 + * offset 2202 */ - uint8_t alignmentFill_at_2286[2]; + uint8_t alignmentFill_at_2202[2]; /** * units: hz - * offset 2288 + * offset 2204 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2292 - */ - int16_t vvtControlMinRpm; - /** - * offset 2294 + * offset 2208 */ sent_input_pin_e sentInputPins[SENT_INPUT_COUNT]; - /** - * units: % - * offset 2296 - */ - int8_t launchFuelAdderPercent; - /** - * Time required to detect a stuck throttle. - * units: sec - * offset 2297 - */ - scaled_channel etbJamTimeout; - /** - * By the way ETB PID runs at 500hz, length in 1/500 of second here. - * offset 2298 - */ - uint16_t etbExpAverageLength; - /** - * offset 2300 - */ - float unused645646; /** * This sets the RPM above which fuel cut is active. * units: rpm - * offset 2304 + * offset 2210 */ int16_t coastingFuelCutRpmHigh; /** * This sets the RPM below which fuel cut is deactivated, this prevents jerking or issues transitioning to idle * units: rpm - * offset 2306 + * offset 2212 */ int16_t coastingFuelCutRpmLow; /** * Throttle position below which fuel cut is active. With an electronic throttle enabled, this checks against pedal position. * units: % - * offset 2308 + * offset 2214 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2310 + * offset 2216 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2726 + * offset 2618 */ 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 2728 + * offset 2620 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2732 + * offset 2624 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2744 + * offset 2636 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2752 + * offset 2644 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2753 + * offset 2645 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2754 + * offset 2646 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2755 + * offset 2647 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2756 + * offset 2648 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2768 + * offset 2660 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2774 + * offset 2666 */ int8_t disableFan1AtSpeed; /** - * offset 2775 + * offset 2667 */ int8_t disableFan2AtSpeed; /** - * offset 2776 + * offset 2668 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2778 + * offset 2670 */ - uint8_t alignmentFill_at_2778[2]; + uint8_t alignmentFill_at_2670[2]; /** - * offset 2780 + * offset 2672 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3212 + * offset 3104 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3214 + * offset 3106 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3216 + * offset 3108 */ 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 3218 + * offset 3110 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3220 + * offset 3112 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3222 + * offset 3114 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3224 + * offset 3116 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3226 + * offset 3118 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3228 + * offset 3120 */ uint16_t mc33_t_hold_tot; /** - * offset 3230 + * offset 3122 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3231 + * offset 3123 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3232 + * offset 3124 */ pin_input_mode_e acSwitchMode; /** - * offset 3233 + * offset 3125 */ pin_output_mode_e tcu_solenoid_mode[TCU_SOLENOID_COUNT]; - /** - * Knock sensor output knock detection threshold depending on current RPM. - * units: dB - * offset 3239 - */ - scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 3255 + * offset 3131 */ - uint8_t alignmentFill_at_3255[1]; + uint8_t alignmentFill_at_3131[1]; /** * units: ratio - * offset 3256 + * offset 3132 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3328 + * offset 3204 */ 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 3400 + * offset 3276 */ 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 3401 + * offset 3277 */ 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 3402 + * offset 3278 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3403 + * offset 3279 */ - uint8_t alignmentFill_at_3403[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3404 + * offset 3280 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3406 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3410 + * offset 3282 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3411 + * offset 3283 */ uint8_t hpfpCamLobes; /** - * offset 3412 + * offset 3284 */ hpfp_cam_e hpfpCam; /** - * offset 3413 + * offset 3285 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3414 + * offset 3286 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3415 + * offset 3287 */ - uint8_t alignmentFill_at_3415[1]; + uint8_t alignmentFill_at_3287[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 3416 + * offset 3288 */ 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 3418 + * offset 3290 */ uint8_t hpfpActivationAngle; /** - * offset 3419 + * offset 3291 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3420 + * offset 3292 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3422 + * offset 3294 */ 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 3424 + * offset 3296 */ uint16_t hpfpTargetDecay; /** - * units: % - * offset 3426 - */ - scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; - /** - * units: deg - * offset 3442 - */ - scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; - /** - * units: volts - * offset 3458 - */ - uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; - /** - * units: ms - * offset 3466 - */ - scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; - /** - * units: kPa - * offset 3482 - */ - uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; - /** - * units: load - * offset 3682 - */ - scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; - /** - * units: RPM - * offset 3702 - */ - scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; - /** - * units: % - * offset 3712 - */ - int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; - /** - * units: cc/lobe - * offset 3812 - */ - scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; - /** - * units: RPM - * offset 3832 - */ - scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; - /** - * offset 3842 + * offset 3298 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3850 + * offset 3306 */ scaled_channel gearRatio[TCU_GEAR_COUNT]; /** * We need to give engine time to build oil pressure without diverting it to VVT * units: ms - * offset 3870 + * offset 3326 */ uint16_t vvtActivationDelayMs; - /** - * units: deg C - * offset 3872 - */ - int8_t wwCltBins[WWAE_TABLE_SIZE]; - /** - * offset 3880 - */ - scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; - /** - * offset 3888 - */ - scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; - /** - * units: kPa - * offset 3896 - */ - int8_t wwMapBins[WWAE_TABLE_SIZE]; - /** - * offset 3904 - */ - scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; - /** - * offset 3912 - */ - scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; /** * units: Nm - * offset 3920 + * offset 3328 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3956 + * offset 3364 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3968 + * offset 3376 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3980 + * offset 3388 */ GearControllerMode gearControllerMode; /** - * offset 3981 + * offset 3389 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3982 + * offset 3390 */ uint16_t acrDisablePhase; /** - * offset 3984 + * offset 3392 */ linear_sensor_s auxLinear1; /** - * offset 4004 + * offset 3412 */ linear_sensor_s auxLinear2; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4030 + * offset 3438 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4031 + * offset 3439 */ - uint8_t alignmentFill_at_4031[1]; + uint8_t alignmentFill_at_3439[1]; /** - * offset 4032 + * offset 3440 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4034 + * offset 3442 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4036 + * offset 3444 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4037 + * offset 3445 */ - uint8_t alignmentFill_at_4037[1]; + uint8_t alignmentFill_at_3445[1]; /** - * offset 4038 + * offset 3446 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4040 + * offset 3448 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4042 + * offset 3450 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4043 + * offset 3451 */ - uint8_t alignmentFill_at_4043[1]; + uint8_t alignmentFill_at_3451[1]; /** - * offset 4044 + * offset 3452 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4046 + * offset 3454 */ output_pin_e acrPin2; /** * units: % - * offset 4048 + * offset 3456 */ float etbMinimumPosition; /** - * offset 4052 + * offset 3460 */ uint16_t tuneHidingKey; /** - * offset 4054 + * offset 3462 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4071 + * offset 3479 */ - uint8_t alignmentFill_at_4071[1]; + uint8_t alignmentFill_at_3479[1]; /** - * offset 4072 + * offset 3480 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4136 - */ - float unused3124141; - /** - * offset 4140 + * offset 3544 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4141 + * offset 3545 */ - uint8_t alignmentFill_at_4141[1]; + uint8_t alignmentFill_at_3545[1]; /** - * offset 4142 + * offset 3546 */ switch_input_pin_e luaDigitalInputPins[LUA_DIGITAL_INPUT_COUNT]; - /** - * units: RPM - * offset 4158 - */ - scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: rpm - * offset 4162 + * offset 3562 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4164 + * offset 3564 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4166 + * offset 3566 */ int16_t ALSMaxDuration; /** * units: C - * offset 4168 + * offset 3568 */ int8_t ALSMinCLT; /** * units: C - * offset 4169 + * offset 3569 */ int8_t ALSMaxCLT; /** - * offset 4170 + * offset 3570 */ uint8_t alsMinTimeBetween; /** - * offset 4171 + * offset 3571 */ uint8_t alsEtbPosition; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4173 + * offset 3573 */ SentEtbType sentEtbType; /** - * offset 4174 + * offset 3574 */ uint16_t customSentTpsMin; /** * units: % - * offset 4176 + * offset 3576 */ int ALSIdleAdd; /** * units: % - * offset 4180 + * offset 3580 */ int ALSEtbAdd; /** - * offset 4184 + * offset 3584 */ float ALSSkipRatio; /** * units: % - * offset 4188 + * offset 3588 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4189 + * offset 3589 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4190 + * offset 3590 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4191 + * offset 3591 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4192 + * offset 3592 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4200 + * offset 3600 */ uint16_t customSentTpsMax; /** - * offset 4202 + * offset 3602 */ uint16_t kLineBaudRate; /** - * offset 4204 + * offset 3604 */ CanGpioType canGpioType; /** - * offset 4205 + * offset 3605 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4206 + * offset 3606 */ int16_t hpfpPeakPos; /** * units: us - * offset 4208 + * offset 3608 */ 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 4210 + * offset 3610 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4211 + * offset 3611 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4212 + * offset 3612 */ 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 4213 + * offset 3613 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4214 + * offset 3614 */ 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 4216 + * offset 3616 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4217 + * offset 3617 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4227 + * offset 3627 */ - uint8_t alignmentFill_at_4227[1]; + uint8_t alignmentFill_at_3627[1]; /** * How many test bench pulses do you want - * offset 4228 + * offset 3628 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4232 + * offset 3632 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4233 + * offset 3633 */ scaled_channel iacByTpsDecayTime; /** - * offset 4234 + * offset 3634 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4246 + * offset 3646 */ 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 4252 + * offset 3652 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4254 + * offset 3654 */ - uint8_t alignmentFill_at_4254[2]; + uint8_t alignmentFill_at_3654[2]; /** - * offset 4256 + * offset 3656 */ ThermistorConf oilTempSensor; /** - * offset 4288 + * offset 3688 */ ThermistorConf fuelTempSensor; /** - * offset 4320 + * offset 3720 */ ThermistorConf ambientTempSensor; /** - * offset 4352 + * offset 3752 */ 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 4384 + * offset 3784 */ 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 4385 + * offset 3785 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4386 + * offset 3786 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4390 + * offset 3790 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4392 + * offset 3792 */ uint16_t speedometerPulsePerKm; /** - * offset 4394 + * offset 3794 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4398 + * offset 3798 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4399 + * offset 3799 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4416 + * offset 3816 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4432 + * offset 3832 */ 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 4468 + * offset 3868 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4469 + * offset 3869 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4470 + * offset 3870 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4471 + * offset 3871 */ - uint8_t alignmentFill_at_4471[1]; + uint8_t alignmentFill_at_3871[1]; /** - * offset 4472 + * offset 3872 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4496 + * offset 3896 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4532 + * offset 3932 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4568 + * offset 3968 */ float auxSpeed1Multiplier; /** - * offset 4572 + * offset 3972 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4576 + * offset 3976 */ Gpio spi4mosiPin; /** - * offset 4578 + * offset 3978 */ Gpio spi4misoPin; /** - * offset 4580 + * offset 3980 */ Gpio spi4sckPin; /** - * offset 4582 + * offset 3982 */ Gpio spi5mosiPin; /** - * offset 4584 + * offset 3984 */ Gpio spi5misoPin; /** - * offset 4586 + * offset 3986 */ Gpio spi5sckPin; /** - * offset 4588 + * offset 3988 */ Gpio spi6mosiPin; /** - * offset 4590 + * offset 3990 */ Gpio spi6misoPin; /** - * offset 4592 + * offset 3992 */ Gpio spi6sckPin; /** - * offset 4594 + * offset 3994 */ pin_mode_e spi4SckMode; /** - * offset 4595 + * offset 3995 */ pin_mode_e spi4MosiMode; /** - * offset 4596 + * offset 3996 */ pin_mode_e spi4MisoMode; /** - * offset 4597 + * offset 3997 */ pin_mode_e spi5SckMode; /** - * offset 4598 + * offset 3998 */ pin_mode_e spi5MosiMode; /** - * offset 4599 + * offset 3999 */ pin_mode_e spi5MisoMode; /** - * offset 4600 + * offset 4000 */ pin_mode_e spi6SckMode; /** - * offset 4601 + * offset 4001 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4602 + * offset 4002 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4722 + * offset 4242 */ - uint8_t alignmentFill_at_4722[2]; + uint8_t alignmentFill_at_4242[2]; }; -static_assert(sizeof(engine_configuration_s) == 4724); +static_assert(sizeof(engine_configuration_s) == 4244); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4724 + * offset 4244 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4756 + * offset 4276 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4788 + * offset 4308 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4852 + * offset 4372 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4860 + * offset 4380 */ 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 4868 + * offset 4388 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4884 + * offset 4404 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4916 + * offset 4436 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4932 + * offset 4452 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4964 + * offset 4484 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4996 + * offset 4516 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5060 + * offset 4580 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5124 + * offset 4644 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5188 + * offset 4708 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5252 + * offset 4772 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5284 + * offset 4804 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5316 + * offset 4836 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5348 + * offset 4868 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5380 + * offset 4900 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5412 + * offset 4932 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5444 + * offset 4964 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5476 + * offset 4996 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5508 + * offset 5028 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5524 + * offset 5044 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5540 + * offset 5060 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5604 + * offset 5124 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5636 + * offset 5156 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5668 + * offset 5188 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5676 + * offset 5196 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5684 + * offset 5204 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5700 + * offset 5220 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5716 + * offset 5236 */ warning_message_t warning_message; /** - * offset 5836 + * offset 5356 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5852 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5964 + * offset 5372 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6028 + * offset 5436 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6036 + * offset 5444 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6100 + * offset 5508 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6108 + * offset 5516 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6172 + * offset 5580 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6180 + * offset 5588 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6188 + * offset 5596 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6220 + * offset 5628 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6252 + * offset 5660 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6260 + * offset 5668 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6292 + * offset 5700 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6296 + * offset 5704 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6300 + * offset 5708 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6332 + * offset 5740 */ lua_script_t luaScript; /** * units: C - * offset 14332 + * offset 13740 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14396 + * offset 13804 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14460 + * offset 13868 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14524 + * offset 13932 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14588 + * offset 13996 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14620 + * offset 14028 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14652 + * offset 14060 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14684 + * offset 14092 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14716 + * offset 14124 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14780 + * offset 14188 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14844 + * offset 14252 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14972 + * offset 14380 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15100 + * offset 14508 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15164 + * offset 14572 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15172 + * offset 14580 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15180 + * offset 14588 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15692 + * offset 15100 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15724 + * offset 15132 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15756 + * offset 15164 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15816 + * offset 15224 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16328 + * offset 15736 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16360 + * offset 15768 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16392 + * offset 15800 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16456 + * offset 15864 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16472 + * offset 15880 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16488 + * offset 15896 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16552 + * offset 15960 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16568 + * offset 15976 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16584 + * offset 15992 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17096 + * offset 16504 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17128 + * offset 16536 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17160 + * offset 16568 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17672 + * offset 17080 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17704 + * offset 17112 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17736 + * offset 17144 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17992 + * offset 17400 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18024 + * offset 17432 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18056 + * offset 17464 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18312 + * offset 17720 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18344 + * offset 17752 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18376 + * offset 17784 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18632 + * offset 18040 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18648 + * offset 18056 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18664 + * offset 18072 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18920 + * offset 18328 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18936 + * offset 18344 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18952 + * offset 18360 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19016 + * offset 18424 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19032 + * offset 18440 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19048 + * offset 18456 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19128 + * offset 18536 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19144 + * offset 18552 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19164 + * offset 18572 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19172 + * offset 18580 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19180 + * offset 18588 */ cyl_trim_s ignTrims[12]; /** - * offset 19372 + * offset 18780 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19380 + * offset 18788 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19388 + * offset 18796 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19580 + * offset 18988 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19596 + * offset 19004 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19684 + * offset 19092 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19692 + * offset 19100 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19700 + * offset 19108 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19708 + * offset 19116 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19716 + * offset 19124 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19724 + * offset 19132 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19732 + * offset 19140 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19740 + * offset 19148 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19776 + * offset 19184 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19782 + * offset 19190 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19788 + * offset 19196 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19824 + * offset 19232 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19830 + * offset 19238 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19836 + * offset 19244 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19868 + * offset 19276 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19876 + * offset 19284 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19884 + * offset 19292 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19916 + * offset 19324 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19924 + * offset 19332 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19932 + * offset 19340 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19964 + * offset 19372 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19972 + * offset 19380 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19980 + * offset 19388 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20732 + * offset 20140 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21484 + * offset 20892 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21508 + * offset 20916 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21532 + * offset 20940 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21908 + * offset 21316 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22284 + * offset 21692 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22290 + * offset 21698 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22296 + * offset 21704 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22302 + * offset 21710 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22308 + * offset 21716 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22314 + * offset 21722 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22320 + * offset 21728 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22326 + * offset 21734 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22332 + * offset 21740 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22338 + * offset 21746 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22344 + * offset 21752 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22350 + * offset 21758 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22366 + * offset 21774 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22374 + * offset 21782 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22382 + * offset 21790 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22418 + * offset 21826 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22430 + * offset 21838 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21850 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21858 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21874 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21882 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21890 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21898 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21914 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21930 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21938 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21954 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22154 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22174 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22184 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22284 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22304 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22314 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22346 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22362 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22366 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22370 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22374 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22382 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22398 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22406 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22414 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22442 + * offset 22422 */ - uint8_t alignmentFill_at_22442[2]; + uint8_t alignmentFill_at_22422[2]; }; -static_assert(sizeof(persistent_config_s) == 22444); +static_assert(sizeof(persistent_config_s) == 22424); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:47 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:51 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan_f7.h b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan_f7.h index 0e868bdf6b..24fe01d145 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan_f7.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_alphax-8chan_f7.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 Tue Mar 19 17:57:50 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:54 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1332 + * offset 1256 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1396 + * offset 1320 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1398 + * offset 1322 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1400 bit 0 */ + offset 1324 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1400 bit 1 */ + offset 1324 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 1400 bit 2 */ + offset 1324 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1400 bit 3 */ + offset 1324 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1400 bit 4 */ + offset 1324 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1400 bit 5 */ + offset 1324 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1400 bit 6 */ + offset 1324 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1400 bit 7 */ + offset 1324 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1400 bit 8 */ + offset 1324 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1400 bit 9 */ + offset 1324 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1400 bit 10 */ + offset 1324 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1400 bit 11 */ + offset 1324 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1400 bit 12 */ + offset 1324 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1400 bit 13 */ + offset 1324 bit 13 */ bool isAlternatorControlEnabled : 1 {}; /** * https://wiki.rusefi.com/Trigger-Configuration-Guide * This setting flips the signal from the primary engine speed sensor. - offset 1400 bit 14 */ + offset 1324 bit 14 */ bool invertPrimaryTriggerSignal : 1 {}; /** * https://wiki.rusefi.com/Trigger-Configuration-Guide * This setting flips the signal from the secondary engine speed sensor. - offset 1400 bit 15 */ + offset 1324 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1400 bit 16 */ + offset 1324 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 1400 bit 17 */ + offset 1324 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1400 bit 18 */ + offset 1324 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1400 bit 19 */ + offset 1324 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1400 bit 20 */ + offset 1324 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1400 bit 21 */ + offset 1324 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1400 bit 22 */ + offset 1324 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1400 bit 23 */ + offset 1324 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1400 bit 24 */ + offset 1324 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1400 bit 25 */ + offset 1324 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1400 bit 26 */ + offset 1324 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1400 bit 27 */ + offset 1324 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1400 bit 28 */ + offset 1324 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1400 bit 29 */ + offset 1324 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1400 bit 30 */ + offset 1324 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1400 bit 31 */ + offset 1324 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1404 + * offset 1328 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1405 + * offset 1329 */ - uint8_t alignmentFill_at_1405[1]; + uint8_t alignmentFill_at_1329[1]; /** * A/C button input - * offset 1406 + * offset 1330 */ switch_input_pin_e acSwitch; /** - * offset 1408 + * offset 1332 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1409 + * offset 1333 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1410 + * offset 1334 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1411 + * offset 1335 */ - uint8_t alignmentFill_at_1411[1]; + uint8_t alignmentFill_at_1335[1]; /** - offset 1412 bit 0 */ + offset 1336 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1412 bit 1 */ + offset 1336 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 1412 bit 2 */ + offset 1336 bit 2 */ bool isCylinderCleanupEnabled : 1 {}; /** * Should we use tables to vary tau/beta based on CLT/MAP, or just with fixed values? - offset 1412 bit 3 */ + offset 1336 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 1412 bit 4 */ + offset 1336 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1412 bit 5 */ + offset 1336 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 1412 bit 6 */ + offset 1336 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 1412 bit 7 */ + offset 1336 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1412 bit 8 */ + offset 1336 bit 8 */ bool isWaveAnalyzerEnabled : 1 {}; /** * This activates a separate fuel table for Idle, this allows fine tuning of the idle fuelling. - offset 1412 bit 9 */ + offset 1336 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1412 bit 10 */ + offset 1336 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 1412 bit 11 */ + offset 1336 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1412 bit 12 */ + offset 1336 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1412 bit 13 */ + offset 1336 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 1412 bit 14 */ + offset 1336 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1412 bit 15 */ + offset 1336 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 1412 bit 16 */ + offset 1336 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 1412 bit 17 */ + offset 1336 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 1412 bit 18 */ + offset 1336 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 1412 bit 19 */ + offset 1336 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1412 bit 20 */ + offset 1336 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1412 bit 21 */ + offset 1336 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1412 bit 22 */ + offset 1336 bit 22 */ bool isPhaseSyncRequiredForIgnition : 1 {}; /** * If enabled, use a curve for RPM limit (based on coolant temperature) instead of a constant value. - offset 1412 bit 23 */ + offset 1336 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 1412 bit 24 */ + offset 1336 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 1412 bit 25 */ + offset 1336 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 1412 bit 26 */ + offset 1336 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1412 bit 27 */ + offset 1336 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 1412 bit 28 */ + offset 1336 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1412 bit 29 */ + offset 1336 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1412 bit 30 */ + offset 1336 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1412 bit 31 */ + offset 1336 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1416 + * offset 1340 */ uint32_t engineChartSize; /** * units: mult - * offset 1420 + * offset 1344 */ float turboSpeedSensorMultiplier; /** - * offset 1424 + * offset 1348 */ 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 1432 + * offset 1356 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1434 + * offset 1358 */ int16_t warningPeriod; /** * units: angle - * offset 1436 + * offset 1360 */ float knockDetectionWindowStart; /** * units: angle - * offset 1440 + * offset 1364 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1444 + * offset 1368 */ float idleStepperReactionTime; /** * units: count - * offset 1448 + * offset 1372 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1452 + * offset 1376 */ 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 1456 + * offset 1380 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1460 + * offset 1384 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1464 + * offset 1388 */ float wwaeTau; /** - * offset 1468 + * offset 1392 */ pid_s alternatorControl; /** - * offset 1488 + * offset 1412 */ pid_s etb; /** - * offset 1508 + * offset 1432 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1512 + * offset 1436 */ int16_t airTaperRpmRange; /** - * offset 1514 + * offset 1438 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1516 + * offset 1440 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1518 + * offset 1442 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1520 + * offset 1444 */ output_pin_e starterControlPin; /** - * offset 1522 + * offset 1446 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1523 + * offset 1447 */ - uint8_t alignmentFill_at_1523[1]; + uint8_t alignmentFill_at_1447[1]; /** - * offset 1524 + * offset 1448 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1526 + * offset 1450 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1527 + * offset 1451 */ - uint8_t alignmentFill_at_1527[1]; + uint8_t alignmentFill_at_1451[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1528 + * offset 1452 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1532 + * offset 1456 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1536 + * offset 1460 */ 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 1538 + * offset 1462 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1540 + * offset 1464 */ 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 1560 + * offset 1484 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1564 + * offset 1488 */ Gpio binarySerialTxPin; /** - * offset 1566 + * offset 1490 */ Gpio binarySerialRxPin; /** - * offset 1568 + * offset 1492 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1572 + * offset 1496 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1574 + * offset 1498 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1576 + * offset 1500 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1580 + * offset 1504 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1584 + * offset 1508 */ int16_t startUpFuelPumpDuration; /** * If the RPM closer to target than this value, disable closed loop idle correction to prevent oscillation * units: RPM - * offset 1586 + * offset 1510 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1588 + * offset 1512 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1592 bit 0 */ + offset 1516 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1592 bit 1 */ + offset 1516 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1592 bit 2 */ + offset 1516 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1592 bit 3 */ + offset 1516 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1592 bit 4 */ + offset 1516 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1592 bit 5 */ + offset 1516 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1592 bit 6 */ + offset 1516 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1592 bit 7 */ + offset 1516 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1592 bit 8 */ + offset 1516 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1592 bit 9 */ + offset 1516 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1592 bit 10 */ + offset 1516 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1592 bit 11 */ + offset 1516 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1592 bit 12 */ + offset 1516 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1592 bit 13 */ + offset 1516 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1592 bit 14 */ + offset 1516 bit 14 */ bool is_enabled_spi_6 : 1 {}; /** * AEM X-Series EGT gauge kit or rusEFI EGT sensor from Wideband controller - offset 1592 bit 15 */ + offset 1516 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1592 bit 16 */ + offset 1516 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1592 bit 17 */ + offset 1516 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1592 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1516 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1592 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1516 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1592 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1516 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1592 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1516 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1592 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1516 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1592 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1516 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1592 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1516 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1592 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1516 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1592 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1516 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1592 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1516 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1592 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1516 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1592 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1516 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1592 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1516 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1592 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1516 bit 31 */ + bool unusedBit_504_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 1596 + * offset 1520 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1598 + * offset 1522 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1600 + * offset 1524 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1602 + * offset 1526 */ Gpio auxSerialRxPin; /** - * offset 1604 + * offset 1528 */ 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 1606 + * offset 1530 */ scaled_channel tpsAccelLookback; /** * Below this speed, disable DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears. * units: kph - * offset 1607 + * offset 1531 */ uint8_t coastingFuelCutVssLow; /** * Above this speed, allow DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears. * units: kph - * offset 1608 + * offset 1532 */ 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 1609 + * offset 1533 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1610 + * offset 1534 */ - uint8_t alignmentFill_at_1610[2]; + uint8_t alignmentFill_at_1534[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 1612 + * offset 1536 */ float tpsAccelEnrichmentThreshold; /** - * offset 1616 + * offset 1540 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1620 + * offset 1544 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1621 + * offset 1545 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1622 + * offset 1546 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1623 + * offset 1547 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1624 + * offset 1548 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1628 + * offset 1552 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1632 + * offset 1556 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1636 + * offset 1560 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1640 + * offset 1564 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1644 + * offset 1568 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1648 + * offset 1572 */ 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 1649 + * offset 1573 */ ve_override_e veOverrideMode; /** - * offset 1650 + * offset 1574 */ 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 1651 + * offset 1575 */ load_override_e afrOverrideMode; /** * units: A - * offset 1652 + * offset 1576 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1653 + * offset 1577 */ scaled_channel mc33_hpfp_i_hold; /** * How long to deactivate power when hold current is reached before applying power again * units: us - * offset 1654 + * offset 1578 */ uint8_t mc33_hpfp_i_hold_off; /** * Maximum amount of time the solenoid can be active before assuming a programming error * units: ms - * offset 1655 + * offset 1579 */ uint8_t mc33_hpfp_max_hold; /** * Enable if DC-motor driver (H-bridge) inverts the signals (eg. RZ7899 on Hellen boards) - offset 1656 bit 0 */ + offset 1580 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1656 bit 1 */ + offset 1580 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1656 bit 2 */ + offset 1580 bit 2 */ bool can2OpenBLT : 1 {}; /** * Select whether to configure injector flow in volumetric flow (defualt, cc/min) or mass flow (g/s). - offset 1656 bit 3 */ + offset 1580 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1656 bit 4 */ + offset 1580 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1656 bit 5 */ + offset 1580 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1656 bit 6 */ + offset 1580 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1656 bit 7 */ + offset 1580 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1656 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1580 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1656 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1580 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1656 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1580 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1656 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1580 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1656 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1580 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1656 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1580 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1656 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1580 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1656 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1580 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1656 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1580 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1656 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1580 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1656 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1580 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1656 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1580 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1656 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1580 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1656 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1580 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1656 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1580 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1656 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1580 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1656 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1580 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1656 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1580 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1656 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1580 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1656 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1580 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1656 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1580 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1656 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1580 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1656 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1580 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1656 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1580 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1660 + * offset 1584 */ uint8_t camDecoder2jzPosition; /** - * offset 1661 + * offset 1585 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1662 + * offset 1586 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1664 + * offset 1588 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1665 + * offset 1589 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1666 + * offset 1590 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1667 + * offset 1591 */ - uint8_t alignmentFill_at_1667[1]; + uint8_t alignmentFill_at_1591[1]; /** * set_can2_tx_pin X - * offset 1668 + * offset 1592 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1670 + * offset 1594 */ Gpio can2RxPin; /** - * offset 1672 + * offset 1596 */ pin_output_mode_e starterControlPinMode; /** - * offset 1673 + * offset 1597 */ 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 1674 + * offset 1598 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1675 + * offset 1599 */ injector_pressure_type_e injectorPressureType; /** - * offset 1676 + * offset 1600 */ output_pin_e hpfpValvePin; /** - * offset 1678 + * offset 1602 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1679 + * offset 1603 */ - uint8_t alignmentFill_at_1679[1]; + uint8_t alignmentFill_at_1603[1]; /** * MAP value above which fuel is cut in case of overboost. * Set to 0 to disable overboost cut. * units: kPa (absolute) - * offset 1680 + * offset 1604 */ float boostCutPressure; /** * units: kg/h - * offset 1684 + * offset 1608 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1700 + * offset 1624 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1716 + * offset 1640 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1720 + * offset 1644 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1724 + * offset 1648 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1728 + * offset 1652 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1732 + * offset 1656 */ output_pin_e vvtPins[CAM_INPUTS_COUNT]; - /** - * offset 1740 - */ - pin_output_mode_e sdCardCsPinMode; - /** - * need 4 byte alignment - * units: units - * offset 1741 - */ - uint8_t alignmentFill_at_1741[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 1744 + * offset 1664 */ int crankingIACposition; /** - * offset 1748 + * offset 1668 */ float tChargeMinRpmMinTps; /** - * offset 1752 + * offset 1672 */ float tChargeMinRpmMaxTps; /** - * offset 1756 + * offset 1676 */ float tChargeMaxRpmMinTps; /** - * offset 1760 + * offset 1680 */ float tChargeMaxRpmMaxTps; /** - * offset 1764 + * offset 1684 */ 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 1766 + * offset 1686 */ 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 1767 + * offset 1687 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1768 + * offset 1688 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1772 + * offset 1692 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1774 + * offset 1694 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1775 + * offset 1695 */ scaled_channel primingDelay; /** - * offset 1776 + * offset 1696 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1784 + * offset 1704 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1808 + * offset 1728 */ tle8888_mode_e tle8888mode; /** - * offset 1809 + * offset 1729 */ 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 1810 + * offset 1730 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1811 + * offset 1731 */ 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 1812 + * offset 1732 */ float fuelReferencePressure; /** * units: mult - * offset 1816 + * offset 1736 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1960 + * offset 1880 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1984 + * offset 1904 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 2008 + * offset 1928 */ ThermistorConf auxTempSensor1; /** - * offset 2040 + * offset 1960 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2072 + * offset 1992 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2074 + * offset 1994 */ int16_t etbFreq; /** - * offset 2076 + * offset 1996 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2096 + * offset 2016 */ stepper_num_micro_steps_e stepperNumMicroSteps; /** * Use to limit the current when the stepper motor is idle, not moving (100% = no limit) * units: % - * offset 2097 + * offset 2017 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2098 + * offset 2018 */ uint8_t stepperMaxDutyCycle; /** - * offset 2099 + * offset 2019 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2100 + * offset 2020 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2148 + * offset 2068 */ float idlePidActivationTime; /** - * offset 2152 + * offset 2072 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2153 + * offset 2073 */ pin_mode_e spi1MosiMode; /** - * offset 2154 + * offset 2074 */ pin_mode_e spi1MisoMode; /** - * offset 2155 + * offset 2075 */ pin_mode_e spi2SckMode; /** - * offset 2156 + * offset 2076 */ pin_mode_e spi2MosiMode; /** - * offset 2157 + * offset 2077 */ pin_mode_e spi2MisoMode; /** - * offset 2158 + * offset 2078 */ pin_mode_e spi3SckMode; /** - * offset 2159 + * offset 2079 */ pin_mode_e spi3MosiMode; /** - * offset 2160 + * offset 2080 */ pin_mode_e spi3MisoMode; /** - * offset 2161 + * offset 2081 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2162 + * offset 2082 */ Gpio mc33816_rstb; /** - * offset 2164 + * offset 2084 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2166 + * offset 2086 */ switch_input_pin_e brakePedalPin; - /** - * offset 2168 - */ - pin_input_mode_e brakePedalPinMode; - /** - * need 4 byte alignment - * units: units - * offset 2169 - */ - uint8_t alignmentFill_at_2169[3]; /** * VVT output PID * TODO: rename to vvtPid - * offset 2172 + * offset 2088 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2212 + * offset 2128 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2244 + * offset 2160 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2252 + * offset 2168 */ linear_sensor_s oilPressure; /** - * offset 2272 + * offset 2188 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2273 + * offset 2189 */ - uint8_t alignmentFill_at_2273[1]; + uint8_t alignmentFill_at_2189[1]; /** - * offset 2274 + * offset 2190 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2276 + * offset 2192 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2277 + * offset 2193 */ uint8_t fan2OffTemperature; /** - * offset 2278 + * offset 2194 */ Gpio stepperEnablePin; /** - * offset 2280 + * offset 2196 */ Gpio tle8888_cs; /** - * offset 2282 + * offset 2198 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2283 + * offset 2199 */ - uint8_t alignmentFill_at_2283[1]; + uint8_t alignmentFill_at_2199[1]; /** - * offset 2284 + * offset 2200 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2286 + * offset 2202 */ - uint8_t alignmentFill_at_2286[2]; + uint8_t alignmentFill_at_2202[2]; /** * units: hz - * offset 2288 + * offset 2204 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2292 - */ - int16_t vvtControlMinRpm; - /** - * offset 2294 + * offset 2208 */ sent_input_pin_e sentInputPins[SENT_INPUT_COUNT]; - /** - * units: % - * offset 2296 - */ - int8_t launchFuelAdderPercent; - /** - * Time required to detect a stuck throttle. - * units: sec - * offset 2297 - */ - scaled_channel etbJamTimeout; - /** - * By the way ETB PID runs at 500hz, length in 1/500 of second here. - * offset 2298 - */ - uint16_t etbExpAverageLength; - /** - * offset 2300 - */ - float unused645646; /** * This sets the RPM above which fuel cut is active. * units: rpm - * offset 2304 + * offset 2210 */ int16_t coastingFuelCutRpmHigh; /** * This sets the RPM below which fuel cut is deactivated, this prevents jerking or issues transitioning to idle * units: rpm - * offset 2306 + * offset 2212 */ int16_t coastingFuelCutRpmLow; /** * Throttle position below which fuel cut is active. With an electronic throttle enabled, this checks against pedal position. * units: % - * offset 2308 + * offset 2214 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2310 + * offset 2216 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2726 + * offset 2618 */ 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 2728 + * offset 2620 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2732 + * offset 2624 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2744 + * offset 2636 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2752 + * offset 2644 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2753 + * offset 2645 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2754 + * offset 2646 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2755 + * offset 2647 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2756 + * offset 2648 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2768 + * offset 2660 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2774 + * offset 2666 */ int8_t disableFan1AtSpeed; /** - * offset 2775 + * offset 2667 */ int8_t disableFan2AtSpeed; /** - * offset 2776 + * offset 2668 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2778 + * offset 2670 */ - uint8_t alignmentFill_at_2778[2]; + uint8_t alignmentFill_at_2670[2]; /** - * offset 2780 + * offset 2672 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3212 + * offset 3104 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3214 + * offset 3106 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3216 + * offset 3108 */ 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 3218 + * offset 3110 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3220 + * offset 3112 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3222 + * offset 3114 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3224 + * offset 3116 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3226 + * offset 3118 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3228 + * offset 3120 */ uint16_t mc33_t_hold_tot; /** - * offset 3230 + * offset 3122 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3231 + * offset 3123 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3232 + * offset 3124 */ pin_input_mode_e acSwitchMode; /** - * offset 3233 + * offset 3125 */ pin_output_mode_e tcu_solenoid_mode[TCU_SOLENOID_COUNT]; - /** - * Knock sensor output knock detection threshold depending on current RPM. - * units: dB - * offset 3239 - */ - scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 3255 + * offset 3131 */ - uint8_t alignmentFill_at_3255[1]; + uint8_t alignmentFill_at_3131[1]; /** * units: ratio - * offset 3256 + * offset 3132 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3328 + * offset 3204 */ 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 3400 + * offset 3276 */ 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 3401 + * offset 3277 */ 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 3402 + * offset 3278 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3403 + * offset 3279 */ - uint8_t alignmentFill_at_3403[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3404 + * offset 3280 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3406 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3410 + * offset 3282 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3411 + * offset 3283 */ uint8_t hpfpCamLobes; /** - * offset 3412 + * offset 3284 */ hpfp_cam_e hpfpCam; /** - * offset 3413 + * offset 3285 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3414 + * offset 3286 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3415 + * offset 3287 */ - uint8_t alignmentFill_at_3415[1]; + uint8_t alignmentFill_at_3287[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 3416 + * offset 3288 */ 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 3418 + * offset 3290 */ uint8_t hpfpActivationAngle; /** - * offset 3419 + * offset 3291 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3420 + * offset 3292 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3422 + * offset 3294 */ 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 3424 + * offset 3296 */ uint16_t hpfpTargetDecay; /** - * units: % - * offset 3426 - */ - scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; - /** - * units: deg - * offset 3442 - */ - scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; - /** - * units: volts - * offset 3458 - */ - uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; - /** - * units: ms - * offset 3466 - */ - scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; - /** - * units: kPa - * offset 3482 - */ - uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; - /** - * units: load - * offset 3682 - */ - scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; - /** - * units: RPM - * offset 3702 - */ - scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; - /** - * units: % - * offset 3712 - */ - int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; - /** - * units: cc/lobe - * offset 3812 - */ - scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; - /** - * units: RPM - * offset 3832 - */ - scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; - /** - * offset 3842 + * offset 3298 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3850 + * offset 3306 */ scaled_channel gearRatio[TCU_GEAR_COUNT]; /** * We need to give engine time to build oil pressure without diverting it to VVT * units: ms - * offset 3870 + * offset 3326 */ uint16_t vvtActivationDelayMs; - /** - * units: deg C - * offset 3872 - */ - int8_t wwCltBins[WWAE_TABLE_SIZE]; - /** - * offset 3880 - */ - scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; - /** - * offset 3888 - */ - scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; - /** - * units: kPa - * offset 3896 - */ - int8_t wwMapBins[WWAE_TABLE_SIZE]; - /** - * offset 3904 - */ - scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; - /** - * offset 3912 - */ - scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; /** * units: Nm - * offset 3920 + * offset 3328 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3956 + * offset 3364 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3968 + * offset 3376 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3980 + * offset 3388 */ GearControllerMode gearControllerMode; /** - * offset 3981 + * offset 3389 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3982 + * offset 3390 */ uint16_t acrDisablePhase; /** - * offset 3984 + * offset 3392 */ linear_sensor_s auxLinear1; /** - * offset 4004 + * offset 3412 */ linear_sensor_s auxLinear2; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4030 + * offset 3438 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4031 + * offset 3439 */ - uint8_t alignmentFill_at_4031[1]; + uint8_t alignmentFill_at_3439[1]; /** - * offset 4032 + * offset 3440 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4034 + * offset 3442 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4036 + * offset 3444 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4037 + * offset 3445 */ - uint8_t alignmentFill_at_4037[1]; + uint8_t alignmentFill_at_3445[1]; /** - * offset 4038 + * offset 3446 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4040 + * offset 3448 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4042 + * offset 3450 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4043 + * offset 3451 */ - uint8_t alignmentFill_at_4043[1]; + uint8_t alignmentFill_at_3451[1]; /** - * offset 4044 + * offset 3452 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4046 + * offset 3454 */ output_pin_e acrPin2; /** * units: % - * offset 4048 + * offset 3456 */ float etbMinimumPosition; /** - * offset 4052 + * offset 3460 */ uint16_t tuneHidingKey; /** - * offset 4054 + * offset 3462 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4071 + * offset 3479 */ - uint8_t alignmentFill_at_4071[1]; + uint8_t alignmentFill_at_3479[1]; /** - * offset 4072 + * offset 3480 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4136 - */ - float unused3124141; - /** - * offset 4140 + * offset 3544 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4141 + * offset 3545 */ - uint8_t alignmentFill_at_4141[1]; + uint8_t alignmentFill_at_3545[1]; /** - * offset 4142 + * offset 3546 */ switch_input_pin_e luaDigitalInputPins[LUA_DIGITAL_INPUT_COUNT]; - /** - * units: RPM - * offset 4158 - */ - scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: rpm - * offset 4162 + * offset 3562 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4164 + * offset 3564 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4166 + * offset 3566 */ int16_t ALSMaxDuration; /** * units: C - * offset 4168 + * offset 3568 */ int8_t ALSMinCLT; /** * units: C - * offset 4169 + * offset 3569 */ int8_t ALSMaxCLT; /** - * offset 4170 + * offset 3570 */ uint8_t alsMinTimeBetween; /** - * offset 4171 + * offset 3571 */ uint8_t alsEtbPosition; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4173 + * offset 3573 */ SentEtbType sentEtbType; /** - * offset 4174 + * offset 3574 */ uint16_t customSentTpsMin; /** * units: % - * offset 4176 + * offset 3576 */ int ALSIdleAdd; /** * units: % - * offset 4180 + * offset 3580 */ int ALSEtbAdd; /** - * offset 4184 + * offset 3584 */ float ALSSkipRatio; /** * units: % - * offset 4188 + * offset 3588 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4189 + * offset 3589 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4190 + * offset 3590 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4191 + * offset 3591 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4192 + * offset 3592 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4200 + * offset 3600 */ uint16_t customSentTpsMax; /** - * offset 4202 + * offset 3602 */ uint16_t kLineBaudRate; /** - * offset 4204 + * offset 3604 */ CanGpioType canGpioType; /** - * offset 4205 + * offset 3605 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4206 + * offset 3606 */ int16_t hpfpPeakPos; /** * units: us - * offset 4208 + * offset 3608 */ 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 4210 + * offset 3610 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4211 + * offset 3611 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4212 + * offset 3612 */ 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 4213 + * offset 3613 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4214 + * offset 3614 */ 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 4216 + * offset 3616 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4217 + * offset 3617 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4227 + * offset 3627 */ - uint8_t alignmentFill_at_4227[1]; + uint8_t alignmentFill_at_3627[1]; /** * How many test bench pulses do you want - * offset 4228 + * offset 3628 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4232 + * offset 3632 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4233 + * offset 3633 */ scaled_channel iacByTpsDecayTime; /** - * offset 4234 + * offset 3634 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4246 + * offset 3646 */ 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 4252 + * offset 3652 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4254 + * offset 3654 */ - uint8_t alignmentFill_at_4254[2]; + uint8_t alignmentFill_at_3654[2]; /** - * offset 4256 + * offset 3656 */ ThermistorConf oilTempSensor; /** - * offset 4288 + * offset 3688 */ ThermistorConf fuelTempSensor; /** - * offset 4320 + * offset 3720 */ ThermistorConf ambientTempSensor; /** - * offset 4352 + * offset 3752 */ 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 4384 + * offset 3784 */ 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 4385 + * offset 3785 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4386 + * offset 3786 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4390 + * offset 3790 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4392 + * offset 3792 */ uint16_t speedometerPulsePerKm; /** - * offset 4394 + * offset 3794 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4398 + * offset 3798 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4399 + * offset 3799 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4416 + * offset 3816 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4432 + * offset 3832 */ 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 4468 + * offset 3868 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4469 + * offset 3869 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4470 + * offset 3870 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4471 + * offset 3871 */ - uint8_t alignmentFill_at_4471[1]; + uint8_t alignmentFill_at_3871[1]; /** - * offset 4472 + * offset 3872 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4496 + * offset 3896 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4532 + * offset 3932 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4568 + * offset 3968 */ float auxSpeed1Multiplier; /** - * offset 4572 + * offset 3972 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4576 + * offset 3976 */ Gpio spi4mosiPin; /** - * offset 4578 + * offset 3978 */ Gpio spi4misoPin; /** - * offset 4580 + * offset 3980 */ Gpio spi4sckPin; /** - * offset 4582 + * offset 3982 */ Gpio spi5mosiPin; /** - * offset 4584 + * offset 3984 */ Gpio spi5misoPin; /** - * offset 4586 + * offset 3986 */ Gpio spi5sckPin; /** - * offset 4588 + * offset 3988 */ Gpio spi6mosiPin; /** - * offset 4590 + * offset 3990 */ Gpio spi6misoPin; /** - * offset 4592 + * offset 3992 */ Gpio spi6sckPin; /** - * offset 4594 + * offset 3994 */ pin_mode_e spi4SckMode; /** - * offset 4595 + * offset 3995 */ pin_mode_e spi4MosiMode; /** - * offset 4596 + * offset 3996 */ pin_mode_e spi4MisoMode; /** - * offset 4597 + * offset 3997 */ pin_mode_e spi5SckMode; /** - * offset 4598 + * offset 3998 */ pin_mode_e spi5MosiMode; /** - * offset 4599 + * offset 3999 */ pin_mode_e spi5MisoMode; /** - * offset 4600 + * offset 4000 */ pin_mode_e spi6SckMode; /** - * offset 4601 + * offset 4001 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4602 + * offset 4002 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4722 + * offset 4242 */ - uint8_t alignmentFill_at_4722[2]; + uint8_t alignmentFill_at_4242[2]; }; -static_assert(sizeof(engine_configuration_s) == 4724); +static_assert(sizeof(engine_configuration_s) == 4244); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4724 + * offset 4244 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4756 + * offset 4276 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4788 + * offset 4308 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4852 + * offset 4372 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4860 + * offset 4380 */ 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 4868 + * offset 4388 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4884 + * offset 4404 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4916 + * offset 4436 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4932 + * offset 4452 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4964 + * offset 4484 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4996 + * offset 4516 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5060 + * offset 4580 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5124 + * offset 4644 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5188 + * offset 4708 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5252 + * offset 4772 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5284 + * offset 4804 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5316 + * offset 4836 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5348 + * offset 4868 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5380 + * offset 4900 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5412 + * offset 4932 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5444 + * offset 4964 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5476 + * offset 4996 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5508 + * offset 5028 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5524 + * offset 5044 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5540 + * offset 5060 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5604 + * offset 5124 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5636 + * offset 5156 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5668 + * offset 5188 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5676 + * offset 5196 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5684 + * offset 5204 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5700 + * offset 5220 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5716 + * offset 5236 */ warning_message_t warning_message; /** - * offset 5836 + * offset 5356 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5852 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5964 + * offset 5372 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6028 + * offset 5436 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6036 + * offset 5444 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6100 + * offset 5508 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6108 + * offset 5516 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6172 + * offset 5580 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6180 + * offset 5588 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6188 + * offset 5596 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6220 + * offset 5628 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6252 + * offset 5660 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6260 + * offset 5668 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6292 + * offset 5700 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6296 + * offset 5704 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6300 + * offset 5708 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6332 + * offset 5740 */ lua_script_t luaScript; /** * units: C - * offset 14332 + * offset 13740 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14396 + * offset 13804 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14460 + * offset 13868 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14524 + * offset 13932 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14588 + * offset 13996 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14620 + * offset 14028 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14652 + * offset 14060 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14684 + * offset 14092 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14716 + * offset 14124 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14780 + * offset 14188 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14844 + * offset 14252 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14972 + * offset 14380 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15100 + * offset 14508 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15164 + * offset 14572 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15172 + * offset 14580 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15180 + * offset 14588 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15692 + * offset 15100 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15724 + * offset 15132 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15756 + * offset 15164 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15816 + * offset 15224 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16328 + * offset 15736 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16360 + * offset 15768 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16392 + * offset 15800 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16456 + * offset 15864 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16472 + * offset 15880 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16488 + * offset 15896 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16552 + * offset 15960 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16568 + * offset 15976 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16584 + * offset 15992 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17096 + * offset 16504 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17128 + * offset 16536 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17160 + * offset 16568 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17672 + * offset 17080 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17704 + * offset 17112 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17736 + * offset 17144 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17992 + * offset 17400 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18024 + * offset 17432 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18056 + * offset 17464 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18312 + * offset 17720 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18344 + * offset 17752 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18376 + * offset 17784 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18632 + * offset 18040 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18648 + * offset 18056 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18664 + * offset 18072 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18920 + * offset 18328 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18936 + * offset 18344 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18952 + * offset 18360 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19016 + * offset 18424 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19032 + * offset 18440 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19048 + * offset 18456 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19128 + * offset 18536 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19144 + * offset 18552 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19164 + * offset 18572 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19172 + * offset 18580 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19180 + * offset 18588 */ cyl_trim_s ignTrims[12]; /** - * offset 19372 + * offset 18780 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19380 + * offset 18788 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19388 + * offset 18796 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19580 + * offset 18988 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19596 + * offset 19004 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19684 + * offset 19092 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19692 + * offset 19100 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19700 + * offset 19108 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19708 + * offset 19116 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19716 + * offset 19124 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19724 + * offset 19132 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19732 + * offset 19140 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19740 + * offset 19148 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19776 + * offset 19184 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19782 + * offset 19190 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19788 + * offset 19196 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19824 + * offset 19232 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19830 + * offset 19238 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19836 + * offset 19244 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19868 + * offset 19276 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19876 + * offset 19284 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19884 + * offset 19292 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19916 + * offset 19324 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19924 + * offset 19332 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19932 + * offset 19340 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19964 + * offset 19372 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19972 + * offset 19380 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19980 + * offset 19388 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20732 + * offset 20140 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21484 + * offset 20892 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21508 + * offset 20916 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21532 + * offset 20940 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21908 + * offset 21316 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22284 + * offset 21692 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22290 + * offset 21698 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22296 + * offset 21704 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22302 + * offset 21710 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22308 + * offset 21716 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22314 + * offset 21722 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22320 + * offset 21728 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22326 + * offset 21734 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22332 + * offset 21740 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22338 + * offset 21746 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22344 + * offset 21752 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22350 + * offset 21758 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22366 + * offset 21774 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22374 + * offset 21782 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22382 + * offset 21790 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22418 + * offset 21826 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22430 + * offset 21838 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21850 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21858 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21874 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21882 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21890 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21898 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21914 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21930 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21938 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21954 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22154 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22174 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22184 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22284 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22304 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22314 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22346 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22362 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22366 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22370 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22374 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22382 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22398 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22406 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22414 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22442 + * offset 22422 */ - uint8_t alignmentFill_at_22442[2]; + uint8_t alignmentFill_at_22422[2]; }; -static_assert(sizeof(persistent_config_s) == 22444); +static_assert(sizeof(persistent_config_s) == 22424); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:50 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:54 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_at_start_f435.h b/firmware/controllers/generated/engine_configuration_generated_structures_at_start_f435.h index 6fbfb97b6d..a1c606966e 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_at_start_f435.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_at_start_f435.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 Tue Mar 19 17:58:34 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:38 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:34 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:38 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_atlas.h b/firmware/controllers/generated/engine_configuration_generated_structures_atlas.h index ddee3bd2c8..a98c8edf0c 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_atlas.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_atlas.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 Tue Mar 19 17:58:25 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:29 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3036 + * offset 2928 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3038 + * offset 2930 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3040 + * offset 2932 */ 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 3042 + * offset 2934 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3044 + * offset 2936 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3046 + * offset 2938 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3048 + * offset 2940 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3050 + * offset 2942 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3052 + * offset 2944 */ uint16_t mc33_t_hold_tot; /** - * offset 3054 + * offset 2946 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3055 + * offset 2947 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3056 + * offset 2948 */ pin_input_mode_e acSwitchMode; /** - * offset 3057 + * offset 2949 */ pin_output_mode_e tcu_solenoid_mode[TCU_SOLENOID_COUNT]; - /** - * Knock sensor output knock detection threshold depending on current RPM. - * units: dB - * offset 3063 - */ - scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 3079 + * offset 2955 */ - uint8_t alignmentFill_at_3079[1]; + uint8_t alignmentFill_at_2955[1]; /** * units: ratio - * offset 3080 + * offset 2956 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3152 + * offset 3028 */ 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 3224 + * offset 3100 */ 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 3225 + * offset 3101 */ 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 3226 + * offset 3102 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3227 + * offset 3103 */ - uint8_t alignmentFill_at_3227[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3228 + * offset 3104 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3230 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3234 + * offset 3106 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3235 + * offset 3107 */ uint8_t hpfpCamLobes; /** - * offset 3236 + * offset 3108 */ hpfp_cam_e hpfpCam; /** - * offset 3237 + * offset 3109 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3238 + * offset 3110 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3239 + * offset 3111 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3111[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 3240 + * offset 3112 */ 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 3242 + * offset 3114 */ uint8_t hpfpActivationAngle; /** - * offset 3243 + * offset 3115 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3244 + * offset 3116 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3246 + * offset 3118 */ 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 3248 + * offset 3120 */ uint16_t hpfpTargetDecay; /** - * units: % - * offset 3250 - */ - scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; - /** - * units: deg - * offset 3266 - */ - scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; - /** - * units: volts - * offset 3282 - */ - uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; - /** - * units: ms - * offset 3290 - */ - scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; - /** - * units: kPa - * offset 3306 - */ - uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; - /** - * units: load - * offset 3506 - */ - scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; - /** - * units: RPM - * offset 3526 - */ - scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; - /** - * units: % - * offset 3536 - */ - int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; - /** - * units: cc/lobe - * offset 3636 - */ - scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; - /** - * units: RPM - * offset 3656 - */ - scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; - /** - * offset 3666 + * offset 3122 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3674 + * offset 3130 */ scaled_channel gearRatio[TCU_GEAR_COUNT]; /** * We need to give engine time to build oil pressure without diverting it to VVT * units: ms - * offset 3694 + * offset 3150 */ uint16_t vvtActivationDelayMs; - /** - * units: deg C - * offset 3696 - */ - int8_t wwCltBins[WWAE_TABLE_SIZE]; - /** - * offset 3704 - */ - scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; - /** - * offset 3712 - */ - scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; - /** - * units: kPa - * offset 3720 - */ - int8_t wwMapBins[WWAE_TABLE_SIZE]; - /** - * offset 3728 - */ - scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; - /** - * offset 3736 - */ - scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; /** * units: Nm - * offset 3744 + * offset 3152 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3780 + * offset 3188 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3792 + * offset 3200 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3804 + * offset 3212 */ GearControllerMode gearControllerMode; /** - * offset 3805 + * offset 3213 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3806 + * offset 3214 */ uint16_t acrDisablePhase; /** - * offset 3808 + * offset 3216 */ linear_sensor_s auxLinear1; /** - * offset 3828 + * offset 3236 */ linear_sensor_s auxLinear2; /** - * offset 3848 + * offset 3256 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 3850 + * offset 3258 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 3851 + * offset 3259 */ - uint8_t alignmentFill_at_3851[1]; + uint8_t alignmentFill_at_3259[1]; /** - * offset 3852 + * offset 3260 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 3854 + * offset 3262 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 3855 + * offset 3263 */ - uint8_t alignmentFill_at_3855[1]; + uint8_t alignmentFill_at_3263[1]; /** - * offset 3856 + * offset 3264 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 3858 + * offset 3266 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 3860 + * offset 3268 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 3861 + * offset 3269 */ - uint8_t alignmentFill_at_3861[1]; + uint8_t alignmentFill_at_3269[1]; /** - * offset 3862 + * offset 3270 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 3864 + * offset 3272 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 3866 + * offset 3274 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 3867 + * offset 3275 */ - uint8_t alignmentFill_at_3867[1]; + uint8_t alignmentFill_at_3275[1]; /** - * offset 3868 + * offset 3276 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 3870 + * offset 3278 */ output_pin_e acrPin2; /** * units: % - * offset 3872 + * offset 3280 */ float etbMinimumPosition; /** - * offset 3876 + * offset 3284 */ uint16_t tuneHidingKey; /** - * offset 3878 + * offset 3286 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 3895 + * offset 3303 */ - uint8_t alignmentFill_at_3895[1]; + uint8_t alignmentFill_at_3303[1]; /** - * offset 3896 + * offset 3304 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 3960 - */ - float unused3124141; - /** - * offset 3964 + * offset 3368 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 3965 + * offset 3369 */ - uint8_t alignmentFill_at_3965[1]; + uint8_t alignmentFill_at_3369[1]; /** - * offset 3966 + * offset 3370 */ switch_input_pin_e luaDigitalInputPins[LUA_DIGITAL_INPUT_COUNT]; - /** - * units: RPM - * offset 3982 - */ - scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: rpm - * offset 3986 + * offset 3386 */ int16_t ALSMinRPM; /** * units: rpm - * offset 3988 + * offset 3388 */ int16_t ALSMaxRPM; /** * units: sec - * offset 3990 + * offset 3390 */ int16_t ALSMaxDuration; /** * units: C - * offset 3992 + * offset 3392 */ int8_t ALSMinCLT; /** * units: C - * offset 3993 + * offset 3393 */ int8_t ALSMaxCLT; /** - * offset 3994 + * offset 3394 */ uint8_t alsMinTimeBetween; /** - * offset 3995 + * offset 3395 */ uint8_t alsEtbPosition; /** * units: % - * offset 3996 + * offset 3396 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 3997 + * offset 3397 */ SentEtbType sentEtbType; /** - * offset 3998 + * offset 3398 */ uint16_t customSentTpsMin; /** * units: % - * offset 4000 + * offset 3400 */ int ALSIdleAdd; /** * units: % - * offset 4004 + * offset 3404 */ int ALSEtbAdd; /** - * offset 4008 + * offset 3408 */ float ALSSkipRatio; /** * units: % - * offset 4012 + * offset 3412 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4013 + * offset 3413 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4014 + * offset 3414 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4015 + * offset 3415 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4016 + * offset 3416 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4024 + * offset 3424 */ uint16_t customSentTpsMax; /** - * offset 4026 + * offset 3426 */ uint16_t kLineBaudRate; /** - * offset 4028 + * offset 3428 */ CanGpioType canGpioType; /** - * offset 4029 + * offset 3429 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4030 + * offset 3430 */ int16_t hpfpPeakPos; /** * units: us - * offset 4032 + * offset 3432 */ 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 4034 + * offset 3434 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4035 + * offset 3435 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4036 + * offset 3436 */ 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 4037 + * offset 3437 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4038 + * offset 3438 */ 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 4040 + * offset 3440 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4041 + * offset 3441 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4051 + * offset 3451 */ - uint8_t alignmentFill_at_4051[1]; + uint8_t alignmentFill_at_3451[1]; /** * How many test bench pulses do you want - * offset 4052 + * offset 3452 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4056 + * offset 3456 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4057 + * offset 3457 */ scaled_channel iacByTpsDecayTime; /** - * offset 4058 + * offset 3458 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4070 + * offset 3470 */ 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 4076 + * offset 3476 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4078 + * offset 3478 */ - uint8_t alignmentFill_at_4078[2]; + uint8_t alignmentFill_at_3478[2]; /** - * offset 4080 + * offset 3480 */ ThermistorConf oilTempSensor; /** - * offset 4112 + * offset 3512 */ ThermistorConf fuelTempSensor; /** - * offset 4144 + * offset 3544 */ ThermistorConf ambientTempSensor; /** - * offset 4176 + * offset 3576 */ 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 4208 + * offset 3608 */ 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 4209 + * offset 3609 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4210 + * offset 3610 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4214 + * offset 3614 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4216 + * offset 3616 */ uint16_t speedometerPulsePerKm; /** - * offset 4218 + * offset 3618 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4222 + * offset 3622 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4223 + * offset 3623 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4224 + * offset 3624 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4240 + * offset 3640 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4256 + * offset 3656 */ 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 4292 + * offset 3692 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4293 + * offset 3693 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4294 + * offset 3694 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4295 + * offset 3695 */ - uint8_t alignmentFill_at_4295[1]; + uint8_t alignmentFill_at_3695[1]; /** - * offset 4296 + * offset 3696 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4320 + * offset 3720 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4356 + * offset 3756 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4392 + * offset 3792 */ float auxSpeed1Multiplier; /** - * offset 4396 + * offset 3796 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4400 + * offset 3800 */ Gpio spi4mosiPin; /** - * offset 4402 + * offset 3802 */ Gpio spi4misoPin; /** - * offset 4404 + * offset 3804 */ Gpio spi4sckPin; /** - * offset 4406 + * offset 3806 */ Gpio spi5mosiPin; /** - * offset 4408 + * offset 3808 */ Gpio spi5misoPin; /** - * offset 4410 + * offset 3810 */ Gpio spi5sckPin; /** - * offset 4412 + * offset 3812 */ Gpio spi6mosiPin; /** - * offset 4414 + * offset 3814 */ Gpio spi6misoPin; /** - * offset 4416 + * offset 3816 */ Gpio spi6sckPin; /** - * offset 4418 + * offset 3818 */ pin_mode_e spi4SckMode; /** - * offset 4419 + * offset 3819 */ pin_mode_e spi4MosiMode; /** - * offset 4420 + * offset 3820 */ pin_mode_e spi4MisoMode; /** - * offset 4421 + * offset 3821 */ pin_mode_e spi5SckMode; /** - * offset 4422 + * offset 3822 */ pin_mode_e spi5MosiMode; /** - * offset 4423 + * offset 3823 */ pin_mode_e spi5MisoMode; /** - * offset 4424 + * offset 3824 */ pin_mode_e spi6SckMode; /** - * offset 4425 + * offset 3825 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4426 + * offset 3826 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4546 + * offset 4066 */ - uint8_t alignmentFill_at_4546[2]; + uint8_t alignmentFill_at_4066[2]; }; -static_assert(sizeof(engine_configuration_s) == 4548); +static_assert(sizeof(engine_configuration_s) == 4068); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4548 + * offset 4068 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4580 + * offset 4100 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4612 + * offset 4132 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4676 + * offset 4196 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4684 + * offset 4204 */ 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 4692 + * offset 4212 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4708 + * offset 4228 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4724 + * offset 4244 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4740 + * offset 4260 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4756 + * offset 4276 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4788 + * offset 4308 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4820 + * offset 4340 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 4884 + * offset 4404 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 4948 + * offset 4468 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5012 + * offset 4532 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5076 + * offset 4596 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5108 + * offset 4628 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5140 + * offset 4660 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5204 + * offset 4724 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5236 + * offset 4756 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5268 + * offset 4788 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5300 + * offset 4820 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5332 + * offset 4852 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5348 + * offset 4868 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5364 + * offset 4884 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5428 + * offset 4948 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5460 + * offset 4980 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5492 + * offset 5012 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5500 + * offset 5020 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5508 + * offset 5028 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5524 + * offset 5044 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5540 + * offset 5060 */ warning_message_t warning_message; /** - * offset 5660 + * offset 5180 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5676 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5788 + * offset 5196 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 5820 + * offset 5228 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 5824 + * offset 5232 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 5856 + * offset 5264 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 5864 + * offset 5272 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 5928 + * offset 5336 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 5936 + * offset 5344 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 5944 + * offset 5352 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 5976 + * offset 5384 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6008 + * offset 5416 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6016 + * offset 5424 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6048 + * offset 5456 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6052 + * offset 5460 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6056 + * offset 5464 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6088 + * offset 5496 */ lua_script_t luaScript; /** * units: C - * offset 14088 + * offset 13496 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14152 + * offset 13560 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14216 + * offset 13624 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14280 + * offset 13688 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14344 + * offset 13752 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14376 + * offset 13784 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14408 + * offset 13816 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14440 + * offset 13848 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14472 + * offset 13880 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14536 + * offset 13944 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14600 + * offset 14008 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14728 + * offset 14136 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 14856 + * offset 14264 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 14920 + * offset 14328 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 14928 + * offset 14336 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 14936 + * offset 14344 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15448 + * offset 14856 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15480 + * offset 14888 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15512 + * offset 14920 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15572 + * offset 14980 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16084 + * offset 15492 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16116 + * offset 15524 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16148 + * offset 15556 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16212 + * offset 15620 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16228 + * offset 15636 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16244 + * offset 15652 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16308 + * offset 15716 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16324 + * offset 15732 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16340 + * offset 15748 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 16596 + * offset 16004 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 16628 + * offset 16036 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 16644 + * offset 16052 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17156 + * offset 16564 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17188 + * offset 16596 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17220 + * offset 16628 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17476 + * offset 16884 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17508 + * offset 16916 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 17540 + * offset 16948 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 17796 + * offset 17204 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 17828 + * offset 17236 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 17860 + * offset 17268 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18116 + * offset 17524 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18132 + * offset 17540 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18148 + * offset 17556 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18404 + * offset 17812 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18420 + * offset 17828 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18436 + * offset 17844 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18500 + * offset 17908 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18516 + * offset 17924 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18532 + * offset 17940 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 18612 + * offset 18020 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18628 + * offset 18036 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 18648 + * offset 18056 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 18656 + * offset 18064 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 18664 + * offset 18072 */ cyl_trim_s ignTrims[12]; /** - * offset 18856 + * offset 18264 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 18864 + * offset 18272 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 18872 + * offset 18280 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19064 + * offset 18472 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19080 + * offset 18488 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19088 + * offset 18496 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19096 + * offset 18504 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19104 + * offset 18512 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19112 + * offset 18520 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19120 + * offset 18528 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19128 + * offset 18536 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19136 + * offset 18544 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19144 + * offset 18552 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19152 + * offset 18560 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19160 + * offset 18568 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19168 + * offset 18576 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19176 + * offset 18584 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19184 + * offset 18592 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19192 + * offset 18600 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19200 + * offset 18608 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19208 + * offset 18616 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19216 + * offset 18624 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19224 + * offset 18632 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19260 + * offset 18668 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19266 + * offset 18674 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19272 + * offset 18680 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19308 + * offset 18716 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19314 + * offset 18722 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19320 + * offset 18728 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19352 + * offset 18760 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19360 + * offset 18768 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19368 + * offset 18776 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19400 + * offset 18808 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19408 + * offset 18816 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19416 + * offset 18824 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19448 + * offset 18856 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19456 + * offset 18864 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19464 + * offset 18872 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20216 + * offset 19624 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 20968 + * offset 20376 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 20992 + * offset 20400 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21016 + * offset 20424 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21392 + * offset 20800 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 21768 + * offset 21176 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 21774 + * offset 21182 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 21780 + * offset 21188 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 21786 + * offset 21194 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 21792 + * offset 21200 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 21798 + * offset 21206 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 21804 + * offset 21212 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 21810 + * offset 21218 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 21816 + * offset 21224 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 21822 + * offset 21230 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 21828 + * offset 21236 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 21834 + * offset 21242 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 21850 + * offset 21258 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 21858 + * offset 21266 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 21866 + * offset 21274 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 21902 + * offset 21310 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 21914 + * offset 21322 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21334 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21342 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21350 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21358 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21366 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21374 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21382 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21398 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21414 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21422 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21438 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 21638 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 21658 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 21668 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 21768 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 21788 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 21798 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 21830 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 21846 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 21850 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 21854 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 21858 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 21866 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 21882 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 21890 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 21898 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 21926 + * offset 21906 */ - uint8_t alignmentFill_at_21926[2]; + uint8_t alignmentFill_at_21906[2]; }; -static_assert(sizeof(persistent_config_s) == 21928); +static_assert(sizeof(persistent_config_s) == 21908); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:25 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:29 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_f407-discovery.h b/firmware/controllers/generated/engine_configuration_generated_structures_f407-discovery.h index 85321f9dbb..66e862018c 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_f407-discovery.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_f407-discovery.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 Tue Mar 19 17:58:41 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:44 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:41 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:44 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_f429-discovery.h b/firmware/controllers/generated/engine_configuration_generated_structures_f429-discovery.h index e22332429c..b168b75322 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_f429-discovery.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_f429-discovery.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 Tue Mar 19 17:58:26 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:30 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:26 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:30 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_f469-discovery.h b/firmware/controllers/generated/engine_configuration_generated_structures_f469-discovery.h index 2b51b31b09..f116206b83 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_f469-discovery.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_f469-discovery.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 Tue Mar 19 17:58:28 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:32 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:28 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:32 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_frankenso_na6.h b/firmware/controllers/generated/engine_configuration_generated_structures_frankenso_na6.h index 5e751a35fc..b428e07f4c 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_frankenso_na6.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_frankenso_na6.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 Tue Mar 19 17:58:23 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:27 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:23 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:27 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_haba208.h b/firmware/controllers/generated/engine_configuration_generated_structures_haba208.h index b57485a288..717db9f43e 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_haba208.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_haba208.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 Tue Mar 19 17:58:02 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:06 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:02 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:06 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen-112-17.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen-112-17.h index 630a222633..3999189d09 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen-112-17.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen-112-17.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 Tue Mar 19 17:57:34 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:39 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:34 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:39 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen-gm-e67.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen-gm-e67.h index 6b03c39fa0..41df947213 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen-gm-e67.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen-gm-e67.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 Tue Mar 19 17:57:40 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:44 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:40 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:44 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen-honda-k.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen-honda-k.h index 559f161dde..06a3a114e3 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen-honda-k.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen-honda-k.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 Tue Mar 19 17:57:37 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:41 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17720 + * offset 17128 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17768 + * offset 17176 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17816 + * offset 17224 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 18328 + * offset 17736 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18360 + * offset 17768 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 18392 + * offset 17800 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 18648 + * offset 18056 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18680 + * offset 18088 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18712 + * offset 18120 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18968 + * offset 18376 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 19000 + * offset 18408 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 19032 + * offset 18440 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19288 + * offset 18696 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19304 + * offset 18712 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19320 + * offset 18728 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 19576 + * offset 18984 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 19592 + * offset 19000 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 19608 + * offset 19016 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19672 + * offset 19080 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19688 + * offset 19096 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19704 + * offset 19112 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19784 + * offset 19192 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19800 + * offset 19208 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19820 + * offset 19228 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19828 + * offset 19236 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19836 + * offset 19244 */ cyl_trim_s ignTrims[12]; /** - * offset 20028 + * offset 19436 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 20036 + * offset 19444 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 20044 + * offset 19452 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 20236 + * offset 19644 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 20252 + * offset 19660 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 20260 + * offset 19668 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 20268 + * offset 19676 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 20276 + * offset 19684 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 20284 + * offset 19692 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 20292 + * offset 19700 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 20300 + * offset 19708 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 20308 + * offset 19716 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 20316 + * offset 19724 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 20324 + * offset 19732 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 20332 + * offset 19740 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 20340 + * offset 19748 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 20348 + * offset 19756 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 20356 + * offset 19764 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 20364 + * offset 19772 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 20372 + * offset 19780 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 20380 + * offset 19788 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 20388 + * offset 19796 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 20396 + * offset 19804 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 20432 + * offset 19840 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 20438 + * offset 19846 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 20444 + * offset 19852 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 20480 + * offset 19888 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 20486 + * offset 19894 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 20492 + * offset 19900 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 20524 + * offset 19932 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 20532 + * offset 19940 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 20540 + * offset 19948 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 20572 + * offset 19980 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 20580 + * offset 19988 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 20588 + * offset 19996 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 20620 + * offset 20028 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 20628 + * offset 20036 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 20636 + * offset 20044 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 21388 + * offset 20796 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 22140 + * offset 21548 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 22164 + * offset 21572 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 22188 + * offset 21596 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 22564 + * offset 21972 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22940 + * offset 22348 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22946 + * offset 22354 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22952 + * offset 22360 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22958 + * offset 22366 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22964 + * offset 22372 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22970 + * offset 22378 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22976 + * offset 22384 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22982 + * offset 22390 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22988 + * offset 22396 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22994 + * offset 22402 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 23000 + * offset 22408 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 23006 + * offset 22414 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 23022 + * offset 22430 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 23030 + * offset 22438 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 23038 + * offset 22446 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 23074 + * offset 22482 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 23086 + * offset 22494 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 22506 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 22514 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 22522 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 22530 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 22538 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 22546 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 22554 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 22570 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 22586 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 22594 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 22610 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22810 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22830 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22840 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22940 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22960 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22970 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 23002 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 23018 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 23022 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 23026 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 23030 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 23038 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 23054 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 23062 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 23070 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 23098 + * offset 23078 */ - uint8_t alignmentFill_at_23098[2]; + uint8_t alignmentFill_at_23078[2]; }; -static_assert(sizeof(persistent_config_s) == 23100); +static_assert(sizeof(persistent_config_s) == 23080); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:37 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:41 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen-nb1.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen-nb1.h index dd4ea4269a..d5d649d115 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen-nb1.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen-nb1.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 Tue Mar 19 17:57:54 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:58 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:54 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:58 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen121nissan.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen121nissan.h index cd2bffd294..98771a7c66 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen121nissan.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen121nissan.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 Tue Mar 19 17:57:45 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:50 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:45 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:50 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen121vag.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen121vag.h index fba98467cb..9556b9a9f4 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen121vag.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen121vag.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 Tue Mar 19 17:57:26 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:30 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:26 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:30 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen128.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen128.h index 651feca2bd..f8df41fc71 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen128.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen128.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 Tue Mar 19 17:57:41 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:46 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:41 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:46 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen154hyundai.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen154hyundai.h index cc6c94a5ae..3a7d51da2f 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen154hyundai.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen154hyundai.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 Tue Mar 19 17:57:27 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:32 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:27 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:32 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen154hyundai_f7.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen154hyundai_f7.h index acd71b5237..1faa9e6fa1 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen154hyundai_f7.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen154hyundai_f7.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 Tue Mar 19 17:57:29 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:33 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:29 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:33 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen72.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen72.h index e22066dbde..c4fff3224c 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen72.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen72.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 Tue Mar 19 17:57:55 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:59 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:55 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:59 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen81.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen81.h index 4d1ad53eeb..09e24829d3 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen81.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen81.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 Tue Mar 19 17:57:33 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:37 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:33 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:37 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellen88bmw.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellen88bmw.h index 86522461fd..13100ee91e 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellen88bmw.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellen88bmw.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 Tue Mar 19 17:57:30 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:35 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:30 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:35 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellenNA6.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellenNA6.h index c28dc216db..14c362b6c5 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellenNA6.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellenNA6.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 Tue Mar 19 17:57:43 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:47 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:43 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:47 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_hellenNA8_96.h b/firmware/controllers/generated/engine_configuration_generated_structures_hellenNA8_96.h index 728f39f58f..2ceebc1b1c 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_hellenNA8_96.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_hellenNA8_96.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 Tue Mar 19 17:57:24 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:29 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:24 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:29 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_m74_9.h b/firmware/controllers/generated/engine_configuration_generated_structures_m74_9.h index 2276459ebd..2ef4948486 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_m74_9.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_m74_9.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 Tue Mar 19 17:58:09 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:13 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:09 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:13 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_mre_f4.h b/firmware/controllers/generated/engine_configuration_generated_structures_mre_f4.h index 2fea56c6b0..4e86e44971 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_mre_f4.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_mre_f4.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 Tue Mar 19 17:58:03 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:08 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:03 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:08 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_mre_f7.h b/firmware/controllers/generated/engine_configuration_generated_structures_mre_f7.h index 719ccd39a0..559abdd165 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_mre_f7.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_mre_f7.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 Tue Mar 19 17:58:05 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:09 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:05 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:09 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_nucleo_f413.h b/firmware/controllers/generated/engine_configuration_generated_structures_nucleo_f413.h index 37fc60c8f7..8e6d0ba081 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_nucleo_f413.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_nucleo_f413.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 Tue Mar 19 17:58:29 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:33 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:29 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:33 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_prometheus_405.h b/firmware/controllers/generated/engine_configuration_generated_structures_prometheus_405.h index 4c36017fb6..2a4b629b9b 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_prometheus_405.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_prometheus_405.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 Tue Mar 19 17:58:37 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:41 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:37 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:41 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_prometheus_469.h b/firmware/controllers/generated/engine_configuration_generated_structures_prometheus_469.h index ade9378f8c..55cc59e91f 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_prometheus_469.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_prometheus_469.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 Tue Mar 19 17:58:38 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:42 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:38 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:42 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_proteus_f4.h b/firmware/controllers/generated/engine_configuration_generated_structures_proteus_f4.h index 5541035d1a..20a81b2c8b 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_proteus_f4.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_proteus_f4.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 Tue Mar 19 17:58:10 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:15 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 18316 + * offset 17724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 18380 + * offset 17788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 18444 + * offset 17852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 18508 + * offset 17916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 18572 + * offset 17980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 18604 + * offset 18012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 18636 + * offset 18044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 18668 + * offset 18076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 18700 + * offset 18108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 18764 + * offset 18172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 18828 + * offset 18236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 18956 + * offset 18364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 19084 + * offset 18492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 19148 + * offset 18556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 19156 + * offset 18564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 19164 + * offset 18572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 19676 + * offset 19084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 19708 + * offset 19116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 19740 + * offset 19148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 19800 + * offset 19208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 20312 + * offset 19720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 20344 + * offset 19752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 20376 + * offset 19784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 20440 + * offset 19848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 20456 + * offset 19864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 20472 + * offset 19880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 20536 + * offset 19944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 20552 + * offset 19960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 20568 + * offset 19976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 21080 + * offset 20488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 21112 + * offset 20520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 21144 + * offset 20552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 21656 + * offset 21064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 21688 + * offset 21096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 21720 + * offset 21128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 21976 + * offset 21384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 22008 + * offset 21416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 22040 + * offset 21448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 22296 + * offset 21704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 22328 + * offset 21736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 22360 + * offset 21768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 22616 + * offset 22024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 22632 + * offset 22040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 22648 + * offset 22056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 22904 + * offset 22312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 22920 + * offset 22328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 22936 + * offset 22344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 23000 + * offset 22408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 23016 + * offset 22424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 23032 + * offset 22440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 23112 + * offset 22520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 23128 + * offset 22536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 23148 + * offset 22556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 23156 + * offset 22564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 23164 + * offset 22572 */ cyl_trim_s ignTrims[12]; /** - * offset 23356 + * offset 22764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 23364 + * offset 22772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 23372 + * offset 22780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 23564 + * offset 22972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 23580 + * offset 22988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 23588 + * offset 22996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 23596 + * offset 23004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 23604 + * offset 23012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 23612 + * offset 23020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 23620 + * offset 23028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 23628 + * offset 23036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 23636 + * offset 23044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 23644 + * offset 23052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 23652 + * offset 23060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 23660 + * offset 23068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 23668 + * offset 23076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 23676 + * offset 23084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 23684 + * offset 23092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 23692 + * offset 23100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 23700 + * offset 23108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 23708 + * offset 23116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 23716 + * offset 23124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 23724 + * offset 23132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 23760 + * offset 23168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 23766 + * offset 23174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 23772 + * offset 23180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 23808 + * offset 23216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 23814 + * offset 23222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 23820 + * offset 23228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 23852 + * offset 23260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 23860 + * offset 23268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 23868 + * offset 23276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 23900 + * offset 23308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 23908 + * offset 23316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 23916 + * offset 23324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 23948 + * offset 23356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 23956 + * offset 23364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 23964 + * offset 23372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 24716 + * offset 24124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 25468 + * offset 24876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 25492 + * offset 24900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 25516 + * offset 24924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 25892 + * offset 25300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 26268 + * offset 25676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 26274 + * offset 25682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 26280 + * offset 25688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 26286 + * offset 25694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 26292 + * offset 25700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 26298 + * offset 25706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 26304 + * offset 25712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 26310 + * offset 25718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 26316 + * offset 25724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 26322 + * offset 25730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 26328 + * offset 25736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 26334 + * offset 25742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 26350 + * offset 25758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 26358 + * offset 25766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 26366 + * offset 25774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 26402 + * offset 25810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 26414 + * offset 25822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 25834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 25842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 25850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 25858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 25866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 25874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 25882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 25898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 25914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 25922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 25938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 26138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 26158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 26168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 26268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 26288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 26298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 26330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 26346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 26350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 26354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 26358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 26366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 26382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 26390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 26398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 26426 + * offset 26406 */ - uint8_t alignmentFill_at_26426[2]; + uint8_t alignmentFill_at_26406[2]; }; -static_assert(sizeof(persistent_config_s) == 26428); +static_assert(sizeof(persistent_config_s) == 26408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:10 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:15 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_proteus_f7.h b/firmware/controllers/generated/engine_configuration_generated_structures_proteus_f7.h index 3a8d3c117c..bcda7fddf7 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_proteus_f7.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_proteus_f7.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 Tue Mar 19 17:58:12 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:16 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 18316 + * offset 17724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 18380 + * offset 17788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 18444 + * offset 17852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 18508 + * offset 17916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 18572 + * offset 17980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 18604 + * offset 18012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 18636 + * offset 18044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 18668 + * offset 18076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 18700 + * offset 18108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 18764 + * offset 18172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 18828 + * offset 18236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 18956 + * offset 18364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 19084 + * offset 18492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 19148 + * offset 18556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 19156 + * offset 18564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 19164 + * offset 18572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 19676 + * offset 19084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 19708 + * offset 19116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 19740 + * offset 19148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 19800 + * offset 19208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 20312 + * offset 19720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 20344 + * offset 19752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 20376 + * offset 19784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 20440 + * offset 19848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 20456 + * offset 19864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 20472 + * offset 19880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 20536 + * offset 19944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 20552 + * offset 19960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 20568 + * offset 19976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 21080 + * offset 20488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 21112 + * offset 20520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 21144 + * offset 20552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 21656 + * offset 21064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 21688 + * offset 21096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 21720 + * offset 21128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 21976 + * offset 21384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 22008 + * offset 21416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 22040 + * offset 21448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 22296 + * offset 21704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 22328 + * offset 21736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 22360 + * offset 21768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 22616 + * offset 22024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 22632 + * offset 22040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 22648 + * offset 22056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 22904 + * offset 22312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 22920 + * offset 22328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 22936 + * offset 22344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 23000 + * offset 22408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 23016 + * offset 22424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 23032 + * offset 22440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 23112 + * offset 22520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 23128 + * offset 22536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 23148 + * offset 22556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 23156 + * offset 22564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 23164 + * offset 22572 */ cyl_trim_s ignTrims[12]; /** - * offset 23356 + * offset 22764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 23364 + * offset 22772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 23372 + * offset 22780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 23564 + * offset 22972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 23580 + * offset 22988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 23588 + * offset 22996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 23596 + * offset 23004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 23604 + * offset 23012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 23612 + * offset 23020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 23620 + * offset 23028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 23628 + * offset 23036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 23636 + * offset 23044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 23644 + * offset 23052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 23652 + * offset 23060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 23660 + * offset 23068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 23668 + * offset 23076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 23676 + * offset 23084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 23684 + * offset 23092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 23692 + * offset 23100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 23700 + * offset 23108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 23708 + * offset 23116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 23716 + * offset 23124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 23724 + * offset 23132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 23760 + * offset 23168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 23766 + * offset 23174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 23772 + * offset 23180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 23808 + * offset 23216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 23814 + * offset 23222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 23820 + * offset 23228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 23852 + * offset 23260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 23860 + * offset 23268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 23868 + * offset 23276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 23900 + * offset 23308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 23908 + * offset 23316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 23916 + * offset 23324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 23948 + * offset 23356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 23956 + * offset 23364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 23964 + * offset 23372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 24716 + * offset 24124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 25468 + * offset 24876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 25492 + * offset 24900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 25516 + * offset 24924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 25892 + * offset 25300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 26268 + * offset 25676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 26274 + * offset 25682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 26280 + * offset 25688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 26286 + * offset 25694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 26292 + * offset 25700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 26298 + * offset 25706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 26304 + * offset 25712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 26310 + * offset 25718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 26316 + * offset 25724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 26322 + * offset 25730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 26328 + * offset 25736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 26334 + * offset 25742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 26350 + * offset 25758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 26358 + * offset 25766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 26366 + * offset 25774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 26402 + * offset 25810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 26414 + * offset 25822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 25834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 25842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 25850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 25858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 25866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 25874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 25882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 25898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 25914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 25922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 25938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 26138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 26158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 26168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 26268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 26288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 26298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 26330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 26346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 26350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 26354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 26358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 26366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 26382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 26390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 26398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 26426 + * offset 26406 */ - uint8_t alignmentFill_at_26426[2]; + uint8_t alignmentFill_at_26406[2]; }; -static_assert(sizeof(persistent_config_s) == 26428); +static_assert(sizeof(persistent_config_s) == 26408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:12 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:16 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_proteus_h7.h b/firmware/controllers/generated/engine_configuration_generated_structures_proteus_h7.h index 9b5b2396b5..9d133bf2d3 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_proteus_h7.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_proteus_h7.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 Tue Mar 19 17:58:13 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:18 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 18316 + * offset 17724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 18380 + * offset 17788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 18444 + * offset 17852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 18508 + * offset 17916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 18572 + * offset 17980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 18604 + * offset 18012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 18636 + * offset 18044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 18668 + * offset 18076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 18700 + * offset 18108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 18764 + * offset 18172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 18828 + * offset 18236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 18956 + * offset 18364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 19084 + * offset 18492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 19148 + * offset 18556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 19156 + * offset 18564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 19164 + * offset 18572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 19676 + * offset 19084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 19708 + * offset 19116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 19740 + * offset 19148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 19800 + * offset 19208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 20312 + * offset 19720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 20344 + * offset 19752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 20376 + * offset 19784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 20440 + * offset 19848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 20456 + * offset 19864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 20472 + * offset 19880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 20536 + * offset 19944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 20552 + * offset 19960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 20568 + * offset 19976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 21080 + * offset 20488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 21112 + * offset 20520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 21144 + * offset 20552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 21656 + * offset 21064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 21688 + * offset 21096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 21720 + * offset 21128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 21976 + * offset 21384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 22008 + * offset 21416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 22040 + * offset 21448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 22296 + * offset 21704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 22328 + * offset 21736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 22360 + * offset 21768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 22616 + * offset 22024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 22632 + * offset 22040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 22648 + * offset 22056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 22904 + * offset 22312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 22920 + * offset 22328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 22936 + * offset 22344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 23000 + * offset 22408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 23016 + * offset 22424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 23032 + * offset 22440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 23112 + * offset 22520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 23128 + * offset 22536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 23148 + * offset 22556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 23156 + * offset 22564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 23164 + * offset 22572 */ cyl_trim_s ignTrims[12]; /** - * offset 23356 + * offset 22764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 23364 + * offset 22772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 23372 + * offset 22780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 23564 + * offset 22972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 23580 + * offset 22988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 23588 + * offset 22996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 23596 + * offset 23004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 23604 + * offset 23012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 23612 + * offset 23020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 23620 + * offset 23028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 23628 + * offset 23036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 23636 + * offset 23044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 23644 + * offset 23052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 23652 + * offset 23060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 23660 + * offset 23068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 23668 + * offset 23076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 23676 + * offset 23084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 23684 + * offset 23092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 23692 + * offset 23100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 23700 + * offset 23108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 23708 + * offset 23116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 23716 + * offset 23124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 23724 + * offset 23132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 23760 + * offset 23168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 23766 + * offset 23174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 23772 + * offset 23180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 23808 + * offset 23216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 23814 + * offset 23222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 23820 + * offset 23228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 23852 + * offset 23260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 23860 + * offset 23268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 23868 + * offset 23276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 23900 + * offset 23308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 23908 + * offset 23316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 23916 + * offset 23324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 23948 + * offset 23356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 23956 + * offset 23364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 23964 + * offset 23372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 24716 + * offset 24124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 25468 + * offset 24876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 25492 + * offset 24900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 25516 + * offset 24924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 25892 + * offset 25300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 26268 + * offset 25676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 26274 + * offset 25682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 26280 + * offset 25688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 26286 + * offset 25694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 26292 + * offset 25700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 26298 + * offset 25706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 26304 + * offset 25712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 26310 + * offset 25718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 26316 + * offset 25724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 26322 + * offset 25730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 26328 + * offset 25736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 26334 + * offset 25742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 26350 + * offset 25758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 26358 + * offset 25766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 26366 + * offset 25774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 26402 + * offset 25810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 26414 + * offset 25822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 25834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 25842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 25850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 25858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 25866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 25874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 25882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 25898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 25914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 25922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 25938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 26138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 26158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 26168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 26268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 26288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 26298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 26330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 26346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 26350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 26354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 26358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 26366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 26382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 26390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 26398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 26426 + * offset 26406 */ - uint8_t alignmentFill_at_26426[2]; + uint8_t alignmentFill_at_26406[2]; }; -static_assert(sizeof(persistent_config_s) == 26428); +static_assert(sizeof(persistent_config_s) == 26408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:13 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:18 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_s105.h b/firmware/controllers/generated/engine_configuration_generated_structures_s105.h index ed6497e843..eb7e494121 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_s105.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_s105.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 Tue Mar 19 17:58:08 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:12 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:08 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:12 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_small-can-board.h b/firmware/controllers/generated/engine_configuration_generated_structures_small-can-board.h index e959f4ca43..dacb654c74 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_small-can-board.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_small-can-board.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 Tue Mar 19 17:57:57 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:01 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:57 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:01 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_stm32f429_nucleo.h b/firmware/controllers/generated/engine_configuration_generated_structures_stm32f429_nucleo.h index 061909ca51..776d9dee9d 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_stm32f429_nucleo.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_stm32f429_nucleo.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 Tue Mar 19 17:58:06 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:11 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:06 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:11 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_stm32f767_nucleo.h b/firmware/controllers/generated/engine_configuration_generated_structures_stm32f767_nucleo.h index b3b5172156..4ceafcc98e 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_stm32f767_nucleo.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_stm32f767_nucleo.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 Tue Mar 19 17:58:30 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:34 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:30 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:34 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_stm32h743_nucleo.h b/firmware/controllers/generated/engine_configuration_generated_structures_stm32h743_nucleo.h index 543c3cf95e..fee6edc3bc 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_stm32h743_nucleo.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_stm32h743_nucleo.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 Tue Mar 19 17:58:35 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:39 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:35 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:39 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_t-b-g.h b/firmware/controllers/generated/engine_configuration_generated_structures_t-b-g.h index e5372d67bd..1390ed3d8f 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_t-b-g.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_t-b-g.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 Tue Mar 19 17:58:39 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:43 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:39 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:43 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_tdg-pdm8.h b/firmware/controllers/generated/engine_configuration_generated_structures_tdg-pdm8.h index 98cddc4e15..f6e3fbbe45 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_tdg-pdm8.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_tdg-pdm8.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 Tue Mar 19 17:58:43 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:47 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:58:43 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:47 UTC 2024 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures_uaefi.h b/firmware/controllers/generated/engine_configuration_generated_structures_uaefi.h index bc18122655..bd0dd48690 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures_uaefi.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures_uaefi.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 Tue Mar 19 17:57:44 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:48 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,1338 +1407,1244 @@ 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; /** - * 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 + * offset 727 */ 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 + * offset 728 */ scaled_channel finalGearRatio; /** - * offset 760 + * Secondary TTL channel baud rate + * units: BPs + * offset 730 + */ + uint16_t tunerStudioSerialSpeed; + /** + * offset 732 */ brain_input_pin_e tcuInputSpeedSensorPin; /** - * offset 762 + * offset 734 */ uint8_t tcuInputSpeedSensorTeeth; /** * need 4 byte alignment * units: units - * offset 763 + * offset 735 */ - 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; + uint8_t alignmentFill_at_735[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 780 + * offset 736 */ Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; /** * units: g/s - * offset 784 + * offset 740 */ scaled_channel fordInjectorSmallPulseSlope; /** - * offset 786 + * offset 742 */ pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; /** - * offset 788 + * offset 744 */ adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units - * offset 789 + * offset 745 */ - uint8_t alignmentFill_at_789[1]; + uint8_t alignmentFill_at_745[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 746 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 748 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 749 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 750 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 751 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_751[1]; /** - 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_226_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 + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + uint8_t alignmentFill_at_838[2]; /** * 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 919 + * offset 859 */ - uint8_t alignmentFill_at_919[1]; + uint8_t alignmentFill_at_859[1]; /** - * offset 920 + * offset 860 */ output_pin_e acRelayPin; /** * units: % - * offset 922 + * 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 923 + * offset 863 */ scaled_channel lambdaProtectionTimeout; /** * units: RPM - * offset 924 + * offset 864 */ scaled_channel lambdaProtectionRestoreRpm; /** - * offset 925 + * offset 865 */ pin_output_mode_e acRelayPinMode; /** * need 4 byte alignment * units: units - * offset 926 + * offset 866 */ - uint8_t alignmentFill_at_926[2]; + uint8_t alignmentFill_at_866[2]; /** - * offset 928 + * offset 868 */ script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; /** - * offset 960 + * offset 900 */ Gpio spi1mosiPin; /** - * offset 962 + * offset 902 */ Gpio spi1misoPin; /** - * offset 964 + * offset 904 */ Gpio spi1sckPin; /** - * offset 966 + * offset 906 */ Gpio spi2mosiPin; /** - * offset 968 + * offset 908 */ Gpio spi2misoPin; /** - * offset 970 + * offset 910 */ Gpio spi2sckPin; /** - * offset 972 + * offset 912 */ Gpio spi3mosiPin; /** - * offset 974 + * offset 914 */ Gpio spi3misoPin; /** - * offset 976 + * offset 916 */ Gpio spi3sckPin; /** * Saab Combustion Detection Module knock signal input pin * also known as Saab Ion Sensing Module - * offset 978 + * offset 918 */ Gpio cdmInputPin; /** - * offset 980 + * offset 920 */ uart_device_e consoleUartDevice; /** * rusEFI console Sensor Sniffer mode - * offset 981 + * offset 921 */ sensor_chart_e sensorChartMode; /** - * offset 982 + * offset 922 */ maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units - * offset 983 + * offset 923 */ - uint8_t alignmentFill_at_983[1]; + uint8_t alignmentFill_at_923[1]; /** - offset 984 bit 0 */ + offset 924 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 924 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 924 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 924 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 924 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 924 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 924 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 924 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 924 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 924 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 924 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 924 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 924 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 924 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 924 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 924 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 924 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 924 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 924 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 924 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 924 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 924 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 924 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 924 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 924 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 924 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 924 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 924 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 924 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 924 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 924 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 924 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 928 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 944 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 946 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 947 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_947[1]; /** - * offset 1008 + * offset 948 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 950 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 952 */ pid_s boostPid; /** - * offset 1032 + * offset 972 */ boostType_e boostType; /** - * offset 1033 + * offset 973 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 974 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 976 */ int boostPwmFrequency; /** - * offset 1040 + * offset 980 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 981 */ antiLagActivationMode_e antiLagActivationMode; /** * need 4 byte alignment * units: units - * offset 1042 + * offset 982 */ - uint8_t alignmentFill_at_1042[2]; + uint8_t alignmentFill_at_982[2]; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 984 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 988 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 992 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 996 */ int launchBoostDuty; /** - * offset 1060 + * offset 1000 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1004 */ float turbochargerFilter; /** - * offset 1068 + * offset 1008 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1012 */ float launchActivateDelay; /** - * offset 1076 + * offset 1016 */ stft_s stft; /** - * offset 1100 + * offset 1040 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1056 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1088 */ 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 1120 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1152 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1164 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1166 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1167 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1228 + * offset 1168 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1170 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1171 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1171[1]; /** - * offset 1232 + * offset 1172 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1174 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1190 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1190[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1192 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1208 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1240 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1304 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1306 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1308 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1308 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 1308 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1308 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1308 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1308 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1308 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1308 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1308 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1308 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1308 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1308 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1308 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1308 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 1308 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 1308 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1308 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 1308 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1308 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1308 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1308 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1308 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1308 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1308 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1308 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1308 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1308 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1308 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1308 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1308 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1308 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1308 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1312 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1313 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1313[1]; /** * A/C button input - * offset 1390 + * offset 1314 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1316 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1317 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1318 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1319 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1319[1]; /** - offset 1396 bit 0 */ + offset 1320 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1320 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 1320 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 1320 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 1320 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1320 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 1320 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 1320 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1320 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 1320 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1320 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 1320 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1320 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1320 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 1320 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1320 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1320 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1320 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 1320 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 1320 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 1320 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 1320 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1320 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 1320 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1320 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1320 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1320 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1324 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1328 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1332 */ 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 1340 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1342 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1344 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1348 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1352 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1356 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1360 */ 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 1364 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1368 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1372 */ float wwaeTau; /** - * offset 1452 + * offset 1376 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1396 */ pid_s etb; /** - * offset 1492 + * offset 1416 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1420 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1422 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2652,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1424 */ int16_t tps2Min; /** @@ -2700,1120 +2660,1061 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1426 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1428 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1430 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1431 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1431[1]; /** - * offset 1508 + * offset 1432 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1434 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1435 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1435[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1436 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1440 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1444 */ 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 1446 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1448 */ 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 1468 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1472 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1474 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1476 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1480 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1482 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1484 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1488 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1492 */ 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 1494 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1496 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1500 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1500 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1500 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1500 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1500 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1500 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1500 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1500 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1500 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1500 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1500 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1500 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1500 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1500 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1500 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 1500 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1500 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1500 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1500 bit 18 */ + bool unusedBit_504_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1500 bit 19 */ + bool unusedBit_504_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1500 bit 20 */ + bool unusedBit_504_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1500 bit 21 */ + bool unusedBit_504_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1500 bit 22 */ + bool unusedBit_504_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1500 bit 23 */ + bool unusedBit_504_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1500 bit 24 */ + bool unusedBit_504_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1500 bit 25 */ + bool unusedBit_504_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1500 bit 26 */ + bool unusedBit_504_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1500 bit 27 */ + bool unusedBit_504_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1500 bit 28 */ + bool unusedBit_504_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1500 bit 29 */ + bool unusedBit_504_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1500 bit 30 */ + bool unusedBit_504_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1500 bit 31 */ + bool unusedBit_504_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 1504 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1506 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1508 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1510 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1512 */ 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 + * offset 1514 */ 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 1515 */ 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 1516 */ 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 + * offset 1517 */ scaled_channel noFuelTrimAfterDfcoTime; /** * need 4 byte alignment * units: units - * offset 1594 + * offset 1518 */ - uint8_t alignmentFill_at_1594[2]; + uint8_t alignmentFill_at_1518[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 1520 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1524 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1528 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1529 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1530 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1531 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1532 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1536 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1540 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1544 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1548 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1552 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1556 */ 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 1557 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1558 */ 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 1559 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1560 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1561 */ 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 1562 */ 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 1563 */ 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 1564 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1564 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1564 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 1564 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1564 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1564 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1564 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1564 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1564 bit 8 */ + bool unusedBit_556_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1564 bit 9 */ + bool unusedBit_556_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1564 bit 10 */ + bool unusedBit_556_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1564 bit 11 */ + bool unusedBit_556_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1564 bit 12 */ + bool unusedBit_556_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1564 bit 13 */ + bool unusedBit_556_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1564 bit 14 */ + bool unusedBit_556_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1564 bit 15 */ + bool unusedBit_556_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1564 bit 16 */ + bool unusedBit_556_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1564 bit 17 */ + bool unusedBit_556_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1564 bit 18 */ + bool unusedBit_556_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1564 bit 19 */ + bool unusedBit_556_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1564 bit 20 */ + bool unusedBit_556_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1564 bit 21 */ + bool unusedBit_556_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1564 bit 22 */ + bool unusedBit_556_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1564 bit 23 */ + bool unusedBit_556_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1564 bit 24 */ + bool unusedBit_556_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1564 bit 25 */ + bool unusedBit_556_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1564 bit 26 */ + bool unusedBit_556_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1564 bit 27 */ + bool unusedBit_556_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1564 bit 28 */ + bool unusedBit_556_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1564 bit 29 */ + bool unusedBit_556_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1564 bit 30 */ + bool unusedBit_556_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1564 bit 31 */ + bool unusedBit_556_31 : 1 {}; /** - * offset 1644 + * offset 1568 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1569 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1570 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1572 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1573 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1574 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1575 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1575[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1576 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1578 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1580 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1581 */ 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 1582 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1583 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1584 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1586 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1587 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1587[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 1588 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1592 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1608 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1624 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1628 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1632 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1636 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1640 */ 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 1648 */ int crankingIACposition; /** - * offset 1732 + * offset 1652 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1656 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1660 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1664 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1668 */ 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 1670 */ 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 1671 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1672 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1676 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1678 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1679 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1680 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1688 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1712 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1713 */ 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 1714 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1715 */ 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 1716 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1720 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1864 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1888 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1912 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1944 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1976 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1978 */ int16_t etbFreq; /** - * offset 2060 + * offset 1980 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 2000 */ 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 2001 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 2002 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 2003 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 2004 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2052 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2056 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2057 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2058 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2059 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2060 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2061 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2062 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2063 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2064 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2065 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2066 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2068 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2070 */ 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 2072 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2112 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2144 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2152 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2172 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2173 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2173[1]; /** - * offset 2258 + * offset 2174 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2176 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2177 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2178 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2180 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2182 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2183 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2183[1]; /** - * offset 2268 + * offset 2184 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2186 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2186[2]; /** * units: hz - * offset 2272 + * offset 2188 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2192 */ 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 2194 */ 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 2196 */ 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 2198 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2200 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2602 */ 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 2604 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2608 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2620 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2628 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2629 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2630 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2631 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2632 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2644 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2650 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2651 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2652 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2654 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2654[2]; /** - * offset 2764 + * offset 2656 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3088 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3090 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3092 */ 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 3094 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3096 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3098 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3100 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3102 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3104 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3106 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3107 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3108 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3109 */ 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 3115 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3115[1]; /** * units: ratio - * offset 3240 + * offset 3116 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3188 */ 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 3260 */ 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 3261 */ 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 3262 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3263 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3264 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3266 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3267 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3268 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3269 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3270 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3271 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3271[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 3272 */ 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 3274 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3275 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3276 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3278 */ 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 3280 */ 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 3282 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3290 */ 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 3310 */ 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 3312 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3348 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3360 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3372 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3373 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3374 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3376 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3396 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3416 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3418 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3419 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3419[1]; /** - * offset 4012 + * offset 3420 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3422 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3423 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3423[1]; /** - * offset 4016 + * offset 3424 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3426 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3428 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3429 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3429[1]; /** - * offset 4022 + * offset 3430 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3432 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3434 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3435 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3435[1]; /** - * offset 4028 + * offset 3436 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3438 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3440 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3444 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3446 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3463 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3463[1]; /** - * offset 4056 + * offset 3464 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3528 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3529 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3529[1]; /** - * offset 4126 + * offset 3530 */ 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 3546 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3548 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3550 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3552 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3553 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3554 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3555 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3556 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3557 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3558 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3560 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3564 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3568 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3572 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3573 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3574 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3575 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3576 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3584 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3586 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3588 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3589 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3590 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3592 */ 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 3594 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3595 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3596 */ 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 3597 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3598 */ 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 3600 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3601 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3611 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3611[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3612 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3616 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3617 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3618 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3630 */ 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 3636 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3638 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3638[2]; /** - * offset 4240 + * offset 3640 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3672 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3704 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3736 */ 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 3768 */ 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 3769 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3770 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3774 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3776 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3778 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3782 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3783 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3784 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3800 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3816 */ 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 3852 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3853 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3854 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3855 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3855[1]; /** - * offset 4456 + * offset 3856 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3880 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3916 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3952 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3956 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3960 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3962 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3964 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3966 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3968 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3970 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3972 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3974 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3976 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3978 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3979 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3980 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3981 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3982 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3983 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3984 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3985 */ pin_mode_e spi6MosiMode; /** * units: units - * offset 4586 + * offset 3986 */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; + uint8_t unusedOftenChangesDuringFirmwareUpdate[240]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 4226 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_4226[2]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4228); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,312 +4588,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 4228 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4260 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4292 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4356 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4364 */ 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 4372 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4388 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4404 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4420 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4436 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4468 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4500 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4564 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4628 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4692 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4756 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4788 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4820 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4852 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4884 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4916 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4948 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4980 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5012 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5028 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5044 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5108 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5140 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5172 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5180 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5188 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5204 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5220 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5340 */ uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5836 - */ - uint8_t unusedGapInCalibration[112]; - /** - * offset 5948 + * offset 5356 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5420 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5428 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5492 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5500 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5564 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5572 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5580 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5612 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5644 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5652 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5684 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5688 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5692 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5724 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13724 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13788 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13852 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13916 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13980 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14012 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14044 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14076 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14108 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14172 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5098,527 +4897,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14236 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14364 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14492 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14556 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14564 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14572 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15084 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15116 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15148 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15208 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15720 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15752 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15784 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15848 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15864 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15880 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15944 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15960 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15976 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16488 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16520 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16552 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17064 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17096 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17128 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17384 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17416 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17448 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17704 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17736 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17768 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18024 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18040 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18056 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18312 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18328 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18344 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18408 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18424 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18440 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18520 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18536 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18556 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18564 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18572 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18764 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18772 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18780 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18972 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18988 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18996 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 19004 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19012 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19020 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19028 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19036 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19044 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19052 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19060 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19068 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19076 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19084 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19092 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19100 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19108 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19116 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19124 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19132 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19168 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19174 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19180 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19216 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19222 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19228 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19260 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19268 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19276 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19308 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19316 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19324 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19356 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19364 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19372 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20124 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20876 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20900 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20924 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21300 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21676 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21682 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21688 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21694 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21700 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21706 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21712 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21718 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21724 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21730 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21736 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21742 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21758 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21766 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21774 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21810 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21822 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21834 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21850 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21858 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21874 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21882 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21898 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21914 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21922 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21938 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22138 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22158 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22168 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22268 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22288 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22298 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22330 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22346 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22350 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22354 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22358 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22366 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22382 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22390 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22398 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22406 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22406[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22408); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:57:44 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:48 UTC 2024 diff --git a/firmware/controllers/generated/rusefi_generated_alphax-2chan.h b/firmware/controllers/generated/rusefi_generated_alphax-2chan.h index 871404be15..af3018447a 100644 --- a/firmware/controllers/generated/rusefi_generated_alphax-2chan.h +++ b/firmware/controllers/generated/rusefi_generated_alphax-2chan.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 2607350728 +#define SIGNATURE_HASH 3612178496 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,7 @@ #define ts_show_vr_threshold_all true #define ts_show_vr_threshold_pins false #define ts_show_vvt_output true -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-2chan.2607350728" +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-2chan.3612178496" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_alphax-4chan.h b/firmware/controllers/generated/rusefi_generated_alphax-4chan.h index 393f4deba2..b7406ce10b 100644 --- a/firmware/controllers/generated/rusefi_generated_alphax-4chan.h +++ b/firmware/controllers/generated/rusefi_generated_alphax-4chan.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1107,7 +1107,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 22408 #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" @@ -1188,7 +1188,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 3917756636 +#define SIGNATURE_HASH 2778743636 #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" @@ -1244,7 +1244,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1429,7 +1429,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 @@ -1558,7 +1558,7 @@ #define ts_show_vr_threshold_all true #define ts_show_vr_threshold_pins false #define ts_show_vvt_output true -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-4chan.3917756636" +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-4chan.2778743636" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_alphax-4chan_f7.h b/firmware/controllers/generated/rusefi_generated_alphax-4chan_f7.h index c6f9eb7af8..3bcea93b1d 100644 --- a/firmware/controllers/generated/rusefi_generated_alphax-4chan_f7.h +++ b/firmware/controllers/generated/rusefi_generated_alphax-4chan_f7.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1107,7 +1107,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 22408 #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" @@ -1188,7 +1188,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 3917756636 +#define SIGNATURE_HASH 2778743636 #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" @@ -1244,7 +1244,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1429,7 +1429,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 @@ -1558,7 +1558,7 @@ #define ts_show_vr_threshold_all true #define ts_show_vr_threshold_pins false #define ts_show_vvt_output true -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-4chan_f7.3917756636" +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-4chan_f7.2778743636" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_alphax-8chan-revA.h b/firmware/controllers/generated/rusefi_generated_alphax-8chan-revA.h index 4147faa2b1..625678f8c0 100644 --- a/firmware/controllers/generated/rusefi_generated_alphax-8chan-revA.h +++ b/firmware/controllers/generated/rusefi_generated_alphax-8chan-revA.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 2718970609 +#define SIGNATURE_HASH 3996404089 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.alphax-8chan-revA.2718970609" +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan-revA.3996404089" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_alphax-8chan.h b/firmware/controllers/generated/rusefi_generated_alphax-8chan.h index abd7fc6e38..2910fe2786 100644 --- a/firmware/controllers/generated/rusefi_generated_alphax-8chan.h +++ b/firmware/controllers/generated/rusefi_generated_alphax-8chan.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 4724 +#define engine_configuration_s_size 4244 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22444 +#define persistent_config_s_size 22424 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 3680373786 +#define SIGNATURE_HASH 2541385618 #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" @@ -1243,7 +1243,7 @@ #define TOOTH_PACKET_SIZE 2 #define TOP_DEAD_CENTER_MESSAGE "r" #define TORQUE_CURVE_SIZE 6 -#define TOTAL_CONFIG_SIZE 22444 +#define TOTAL_CONFIG_SIZE 22424 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,7 @@ #define ts_show_vr_threshold_all true #define ts_show_vr_threshold_pins false #define ts_show_vvt_output true -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan.3680373786" +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan.2541385618" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_alphax-8chan_f7.h b/firmware/controllers/generated/rusefi_generated_alphax-8chan_f7.h index 51f3601311..9e40543770 100644 --- a/firmware/controllers/generated/rusefi_generated_alphax-8chan_f7.h +++ b/firmware/controllers/generated/rusefi_generated_alphax-8chan_f7.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 4724 +#define engine_configuration_s_size 4244 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22444 +#define persistent_config_s_size 22424 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 3680373786 +#define SIGNATURE_HASH 2541385618 #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" @@ -1243,7 +1243,7 @@ #define TOOTH_PACKET_SIZE 2 #define TOP_DEAD_CENTER_MESSAGE "r" #define TORQUE_CURVE_SIZE 6 -#define TOTAL_CONFIG_SIZE 22444 +#define TOTAL_CONFIG_SIZE 22424 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,7 @@ #define ts_show_vr_threshold_all true #define ts_show_vr_threshold_pins false #define ts_show_vvt_output true -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan_f7.3680373786" +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan_f7.2541385618" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_at_start_f435.h b/firmware/controllers/generated/rusefi_generated_at_start_f435.h index a4e25c123b..4661ee7dbd 100644 --- a/firmware/controllers/generated/rusefi_generated_at_start_f435.h +++ b/firmware/controllers/generated/rusefi_generated_at_start_f435.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4126914918 +#define SIGNATURE_HASH 3118449390 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.at_start_f435.4126914918" +#define TS_SIGNATURE "rusEFI master.2024.03.20.at_start_f435.3118449390" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_atlas.h b/firmware/controllers/generated/rusefi_generated_atlas.h index be04d304de..bf4f45780c 100644 --- a/firmware/controllers/generated/rusefi_generated_atlas.h +++ b/firmware/controllers/generated/rusefi_generated_atlas.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 4548 +#define engine_configuration_s_size 4068 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 21928 +#define persistent_config_s_size 21908 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 2986110248 +#define SIGNATURE_HASH 4258797216 #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" @@ -1242,7 +1242,7 @@ #define TOOTH_PACKET_SIZE 2 #define TOP_DEAD_CENTER_MESSAGE "r" #define TORQUE_CURVE_SIZE 6 -#define TOTAL_CONFIG_SIZE 21928 +#define TOTAL_CONFIG_SIZE 21908 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.atlas.2986110248" +#define TS_SIGNATURE "rusEFI master.2024.03.20.atlas.4258797216" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_f407-discovery.h b/firmware/controllers/generated/rusefi_generated_f407-discovery.h index 77078cdffc..8fee0206e9 100644 --- a/firmware/controllers/generated/rusefi_generated_f407-discovery.h +++ b/firmware/controllers/generated/rusefi_generated_f407-discovery.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets true -#define SIGNATURE_HASH 1370112519 +#define SIGNATURE_HASH 495860111 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,7 +1556,7 @@ #define ts_show_vr_threshold_all true #define ts_show_vr_threshold_pins true #define ts_show_vvt_output true -#define TS_SIGNATURE "rusEFI master.2024.03.20.f407-discovery.1370112519" +#define TS_SIGNATURE "rusEFI master.2024.03.20.f407-discovery.495860111" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_f429-discovery.h b/firmware/controllers/generated/rusefi_generated_f429-discovery.h index 438071e708..f54d14f9f3 100644 --- a/firmware/controllers/generated/rusefi_generated_f429-discovery.h +++ b/firmware/controllers/generated/rusefi_generated_f429-discovery.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4126914918 +#define SIGNATURE_HASH 3118449390 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.f429-discovery.4126914918" +#define TS_SIGNATURE "rusEFI master.2024.03.20.f429-discovery.3118449390" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_f469-discovery.h b/firmware/controllers/generated/rusefi_generated_f469-discovery.h index ba6eabbf9c..638d8c8884 100644 --- a/firmware/controllers/generated/rusefi_generated_f469-discovery.h +++ b/firmware/controllers/generated/rusefi_generated_f469-discovery.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 3341598709 +#define SIGNATURE_HASH 2332607613 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.f469-discovery.3341598709" +#define TS_SIGNATURE "rusEFI master.2024.03.20.f469-discovery.2332607613" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_frankenso_na6.h b/firmware/controllers/generated/rusefi_generated_frankenso_na6.h index ed4594f56c..0c59a28890 100644 --- a/firmware/controllers/generated/rusefi_generated_frankenso_na6.h +++ b/firmware/controllers/generated/rusefi_generated_frankenso_na6.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets true -#define SIGNATURE_HASH 2742603133 +#define SIGNATURE_HASH 4015830773 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.frankenso_na6.2742603133" +#define TS_SIGNATURE "rusEFI master.2024.03.20.frankenso_na6.4015830773" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_haba208.h b/firmware/controllers/generated/rusefi_generated_haba208.h index 6b500a9034..c92d447a2b 100644 --- a/firmware/controllers/generated/rusefi_generated_haba208.h +++ b/firmware/controllers/generated/rusefi_generated_haba208.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4126914918 +#define SIGNATURE_HASH 3118449390 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.haba208.4126914918" +#define TS_SIGNATURE "rusEFI master.2024.03.20.haba208.3118449390" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen-112-17.h b/firmware/controllers/generated/rusefi_generated_hellen-112-17.h index 08acb2f5cc..67b6370cf1 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen-112-17.h +++ b/firmware/controllers/generated/rusefi_generated_hellen-112-17.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 2096308706 +#define SIGNATURE_HASH 819419754 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.hellen-112-17.2096308706" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-112-17.819419754" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen-gm-e67.h b/firmware/controllers/generated/rusefi_generated_hellen-gm-e67.h index c7f9dcfd67..47322c279a 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen-gm-e67.h +++ b/firmware/controllers/generated/rusefi_generated_hellen-gm-e67.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 964878046 +#define SIGNATURE_HASH 1973855574 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.hellen-gm-e67.964878046" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-gm-e67.1973855574" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen-honda-k.h b/firmware/controllers/generated/rusefi_generated_hellen-honda-k.h index c3892cd46b..8ba84c36bf 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen-honda-k.h +++ b/firmware/controllers/generated/rusefi_generated_hellen-honda-k.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 23100 +#define persistent_config_s_size 23080 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 3238994525 +#define SIGNATURE_HASH 2368428501 #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" @@ -1243,7 +1243,7 @@ #define TOOTH_PACKET_SIZE 2 #define TOP_DEAD_CENTER_MESSAGE "r" #define TORQUE_CURVE_SIZE 6 -#define TOTAL_CONFIG_SIZE 23100 +#define TOTAL_CONFIG_SIZE 23080 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1429,7 +1429,7 @@ #define ts_drop_template_comments true #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 @@ -1559,7 +1559,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 master.2024.03.20.hellen-honda-k.3238994525" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-honda-k.2368428501" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen-nb1.h b/firmware/controllers/generated/rusefi_generated_hellen-nb1.h index 822215c43b..0271b30dc3 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen-nb1.h +++ b/firmware/controllers/generated/rusefi_generated_hellen-nb1.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 484659014 +#define SIGNATURE_HASH 1355232462 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.hellen-nb1.484659014" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-nb1.1355232462" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen121nissan.h b/firmware/controllers/generated/rusefi_generated_hellen121nissan.h index e5cc3828c7..f62206667e 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen121nissan.h +++ b/firmware/controllers/generated/rusefi_generated_hellen121nissan.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 3628144497 +#define SIGNATURE_HASH 2489675001 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.hellen121nissan.3628144497" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen121nissan.2489675001" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen121vag.h b/firmware/controllers/generated/rusefi_generated_hellen121vag.h index 8133d89087..ed609a2bac 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen121vag.h +++ b/firmware/controllers/generated/rusefi_generated_hellen121vag.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 3313673344 +#define SIGNATURE_HASH 2309414664 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.hellen121vag.3313673344" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen121vag.2309414664" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen128.h b/firmware/controllers/generated/rusefi_generated_hellen128.h index f1fcc2ad79..e0f870289e 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen128.h +++ b/firmware/controllers/generated/rusefi_generated_hellen128.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 409572241 +#define SIGNATURE_HASH 1414391833 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.hellen128.409572241" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen128.1414391833" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen154hyundai.h b/firmware/controllers/generated/rusefi_generated_hellen154hyundai.h index 49391dbcbe..760bc05441 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen154hyundai.h +++ b/firmware/controllers/generated/rusefi_generated_hellen154hyundai.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 2576587691 +#define SIGNATURE_HASH 3585597475 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.hellen154hyundai.2576587691" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen154hyundai.3585597475" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen154hyundai_f7.h b/firmware/controllers/generated/rusefi_generated_hellen154hyundai_f7.h index b1a75c4115..167e5d8ad3 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen154hyundai_f7.h +++ b/firmware/controllers/generated/rusefi_generated_hellen154hyundai_f7.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 2576587691 +#define SIGNATURE_HASH 3585597475 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.hellen154hyundai_f7.2576587691" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen154hyundai_f7.3585597475" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen72.h b/firmware/controllers/generated/rusefi_generated_hellen72.h index a4fb2d38b8..04527aa6d6 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen72.h +++ b/firmware/controllers/generated/rusefi_generated_hellen72.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 1964658170 +#define SIGNATURE_HASH 960378482 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.hellen72.1964658170" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen72.960378482" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen81.h b/firmware/controllers/generated/rusefi_generated_hellen81.h index 6b96a8ea1c..387f18ee11 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen81.h +++ b/firmware/controllers/generated/rusefi_generated_hellen81.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 2422942080 +#define SIGNATURE_HASH 3696185864 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.hellen81.2422942080" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen81.3696185864" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellen88bmw.h b/firmware/controllers/generated/rusefi_generated_hellen88bmw.h index 3b5e380d29..eafcd0f825 100644 --- a/firmware/controllers/generated/rusefi_generated_hellen88bmw.h +++ b/firmware/controllers/generated/rusefi_generated_hellen88bmw.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 2269658307 +#define SIGNATURE_HASH 3412870987 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,7 @@ #define ts_show_vr_threshold_all false #define ts_show_vr_threshold_pins true #define ts_show_vvt_output false -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen88bmw.2269658307" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen88bmw.3412870987" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellenNA6.h b/firmware/controllers/generated/rusefi_generated_hellenNA6.h index b7757a1ff6..b4d6cabfdd 100644 --- a/firmware/controllers/generated/rusefi_generated_hellenNA6.h +++ b/firmware/controllers/generated/rusefi_generated_hellenNA6.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 1633573510 +#define SIGNATURE_HASH 762978574 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.hellenNA6.1633573510" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellenNA6.762978574" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_hellenNA8_96.h b/firmware/controllers/generated/rusefi_generated_hellenNA8_96.h index 8875e1874d..9c941613c9 100644 --- a/firmware/controllers/generated/rusefi_generated_hellenNA8_96.h +++ b/firmware/controllers/generated/rusefi_generated_hellenNA8_96.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1188,7 +1188,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 2659457096 +#define SIGNATURE_HASH 3533726656 #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" @@ -1244,7 +1244,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1429,7 +1429,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 @@ -1558,7 +1558,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 master.2024.03.20.hellenNA8_96.2659457096" +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellenNA8_96.3533726656" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_m74_9.h b/firmware/controllers/generated/rusefi_generated_m74_9.h index 006f822dd9..3a4afacb60 100644 --- a/firmware/controllers/generated/rusefi_generated_m74_9.h +++ b/firmware/controllers/generated/rusefi_generated_m74_9.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 1094812089 +#define SIGNATURE_HASH 224786993 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1557,7 +1557,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 master.2024.03.20.m74_9.1094812089" +#define TS_SIGNATURE "rusEFI master.2024.03.20.m74_9.224786993" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_mre_f4.h b/firmware/controllers/generated/rusefi_generated_mre_f4.h index 38cd36db92..2453fd5573 100644 --- a/firmware/controllers/generated/rusefi_generated_mre_f4.h +++ b/firmware/controllers/generated/rusefi_generated_mre_f4.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets true #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4130662297 +#define SIGNATURE_HASH 3121650705 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.mre_f4.4130662297" +#define TS_SIGNATURE "rusEFI master.2024.03.20.mre_f4.3121650705" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_mre_f7.h b/firmware/controllers/generated/rusefi_generated_mre_f7.h index 3abb250644..c5c34f612d 100644 --- a/firmware/controllers/generated/rusefi_generated_mre_f7.h +++ b/firmware/controllers/generated/rusefi_generated_mre_f7.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_microRusEFI_presets true #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4130662297 +#define SIGNATURE_HASH 3121650705 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,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 master.2024.03.20.mre_f7.4130662297" +#define TS_SIGNATURE "rusEFI master.2024.03.20.mre_f7.3121650705" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_nucleo_f413.h b/firmware/controllers/generated/rusefi_generated_nucleo_f413.h index b7ea6589ae..27775776df 100644 --- a/firmware/controllers/generated/rusefi_generated_nucleo_f413.h +++ b/firmware/controllers/generated/rusefi_generated_nucleo_f413.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4126914918 +#define SIGNATURE_HASH 3118449390 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.nucleo_f413.4126914918" +#define TS_SIGNATURE "rusEFI master.2024.03.20.nucleo_f413.3118449390" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_prometheus_405.h b/firmware/controllers/generated/rusefi_generated_prometheus_405.h index afdfb0fbf1..4fbdec4f3f 100644 --- a/firmware/controllers/generated/rusefi_generated_prometheus_405.h +++ b/firmware/controllers/generated/rusefi_generated_prometheus_405.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 3312415990 +#define SIGNATURE_HASH 2303397758 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.prometheus_405.3312415990" +#define TS_SIGNATURE "rusEFI master.2024.03.20.prometheus_405.2303397758" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_prometheus_469.h b/firmware/controllers/generated/rusefi_generated_prometheus_469.h index cc177b22da..17b9e73195 100644 --- a/firmware/controllers/generated/rusefi_generated_prometheus_469.h +++ b/firmware/controllers/generated/rusefi_generated_prometheus_469.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 3312415990 +#define SIGNATURE_HASH 2303397758 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.prometheus_469.3312415990" +#define TS_SIGNATURE "rusEFI master.2024.03.20.prometheus_469.2303397758" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_proteus_f4.h b/firmware/controllers/generated/rusefi_generated_proteus_f4.h index 2bd469f8af..c88e4b51f7 100644 --- a/firmware/controllers/generated/rusefi_generated_proteus_f4.h +++ b/firmware/controllers/generated/rusefi_generated_proteus_f4.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 26428 +#define persistent_config_s_size 26408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets true #define show_test_presets false -#define SIGNATURE_HASH 475815825 +#define SIGNATURE_HASH 1350050841 #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" @@ -1242,7 +1242,7 @@ #define TOOTH_PACKET_SIZE 2 #define TOP_DEAD_CENTER_MESSAGE "r" #define TORQUE_CURVE_SIZE 6 -#define TOTAL_CONFIG_SIZE 26428 +#define TOTAL_CONFIG_SIZE 26408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.proteus_f4.475815825" +#define TS_SIGNATURE "rusEFI master.2024.03.20.proteus_f4.1350050841" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_proteus_f7.h b/firmware/controllers/generated/rusefi_generated_proteus_f7.h index c6008f5fe6..b98865c144 100644 --- a/firmware/controllers/generated/rusefi_generated_proteus_f7.h +++ b/firmware/controllers/generated/rusefi_generated_proteus_f7.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 26428 +#define persistent_config_s_size 26408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets true #define show_test_presets false -#define SIGNATURE_HASH 475815825 +#define SIGNATURE_HASH 1350050841 #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" @@ -1242,7 +1242,7 @@ #define TOOTH_PACKET_SIZE 2 #define TOP_DEAD_CENTER_MESSAGE "r" #define TORQUE_CURVE_SIZE 6 -#define TOTAL_CONFIG_SIZE 26428 +#define TOTAL_CONFIG_SIZE 26408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.proteus_f7.475815825" +#define TS_SIGNATURE "rusEFI master.2024.03.20.proteus_f7.1350050841" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_proteus_h7.h b/firmware/controllers/generated/rusefi_generated_proteus_h7.h index 3c63571a48..79d3124ce2 100644 --- a/firmware/controllers/generated/rusefi_generated_proteus_h7.h +++ b/firmware/controllers/generated/rusefi_generated_proteus_h7.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 26428 +#define persistent_config_s_size 26408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets true #define show_test_presets false -#define SIGNATURE_HASH 475815825 +#define SIGNATURE_HASH 1350050841 #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" @@ -1242,7 +1242,7 @@ #define TOOTH_PACKET_SIZE 2 #define TOP_DEAD_CENTER_MESSAGE "r" #define TORQUE_CURVE_SIZE 6 -#define TOTAL_CONFIG_SIZE 26428 +#define TOTAL_CONFIG_SIZE 26408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.proteus_h7.475815825" +#define TS_SIGNATURE "rusEFI master.2024.03.20.proteus_h7.1350050841" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_s105.h b/firmware/controllers/generated/rusefi_generated_s105.h index 8db470231d..f6e4abd88d 100644 --- a/firmware/controllers/generated/rusefi_generated_s105.h +++ b/firmware/controllers/generated/rusefi_generated_s105.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 1248868772 +#define SIGNATURE_HASH 106185260 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1557,7 +1557,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 master.2024.03.20.s105.1248868772" +#define TS_SIGNATURE "rusEFI master.2024.03.20.s105.106185260" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_small-can-board.h b/firmware/controllers/generated/rusefi_generated_small-can-board.h index 13bc3b0a29..364ae6d68a 100644 --- a/firmware/controllers/generated/rusefi_generated_small-can-board.h +++ b/firmware/controllers/generated/rusefi_generated_small-can-board.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_Proteus_presets false #define show_small_can_board_presets true #define show_test_presets false -#define SIGNATURE_HASH 3411703279 +#define SIGNATURE_HASH 2273185383 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1558,7 +1558,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 master.2024.03.20.small-can-board.3411703279" +#define TS_SIGNATURE "rusEFI master.2024.03.20.small-can-board.2273185383" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_stm32f429_nucleo.h b/firmware/controllers/generated/rusefi_generated_stm32f429_nucleo.h index 2606968770..6bdee30548 100644 --- a/firmware/controllers/generated/rusefi_generated_stm32f429_nucleo.h +++ b/firmware/controllers/generated/rusefi_generated_stm32f429_nucleo.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4126914918 +#define SIGNATURE_HASH 3118449390 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.stm32f429_nucleo.4126914918" +#define TS_SIGNATURE "rusEFI master.2024.03.20.stm32f429_nucleo.3118449390" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_stm32f767_nucleo.h b/firmware/controllers/generated/rusefi_generated_stm32f767_nucleo.h index d9cd87f287..d9e3b53fee 100644 --- a/firmware/controllers/generated/rusefi_generated_stm32f767_nucleo.h +++ b/firmware/controllers/generated/rusefi_generated_stm32f767_nucleo.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4126914918 +#define SIGNATURE_HASH 3118449390 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.stm32f767_nucleo.4126914918" +#define TS_SIGNATURE "rusEFI master.2024.03.20.stm32f767_nucleo.3118449390" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_stm32h743_nucleo.h b/firmware/controllers/generated/rusefi_generated_stm32h743_nucleo.h index af35c3ce12..20a9e3e1a7 100644 --- a/firmware/controllers/generated/rusefi_generated_stm32h743_nucleo.h +++ b/firmware/controllers/generated/rusefi_generated_stm32h743_nucleo.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4126914918 +#define SIGNATURE_HASH 3118449390 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.stm32h743_nucleo.4126914918" +#define TS_SIGNATURE "rusEFI master.2024.03.20.stm32h743_nucleo.3118449390" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_t-b-g.h b/firmware/controllers/generated/rusefi_generated_t-b-g.h index bffed6ba27..03397faf31 100644 --- a/firmware/controllers/generated/rusefi_generated_t-b-g.h +++ b/firmware/controllers/generated/rusefi_generated_t-b-g.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4126914918 +#define SIGNATURE_HASH 3118449390 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.t-b-g.4126914918" +#define TS_SIGNATURE "rusEFI master.2024.03.20.t-b-g.3118449390" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_tdg-pdm8.h b/firmware/controllers/generated/rusefi_generated_tdg-pdm8.h index 14dfc58d8c..a269542129 100644 --- a/firmware/controllers/generated/rusefi_generated_tdg-pdm8.h +++ b/firmware/controllers/generated/rusefi_generated_tdg-pdm8.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1186,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 2136315204 +#define SIGNATURE_HASH 863104716 #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" @@ -1242,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1427,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 @@ -1556,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 master.2024.03.20.tdg-pdm8.2136315204" +#define TS_SIGNATURE "rusEFI master.2024.03.20.tdg-pdm8.863104716" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/rusefi_generated_uaefi.h b/firmware/controllers/generated/rusefi_generated_uaefi.h index e92f26807e..d4be7b2efa 100644 --- a/firmware/controllers/generated/rusefi_generated_uaefi.h +++ b/firmware/controllers/generated/rusefi_generated_uaefi.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 4228 #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 @@ -441,7 +441,7 @@ #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 #define FANCY_OPTIONS_COUNT 16 -#define FLASH_DATA_VERSION 20014 +#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" @@ -1106,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 22408 #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" @@ -1187,7 +1187,7 @@ #define show_Proteus_presets false #define show_test_presets false #define show_uaefi_presets true -#define SIGNATURE_HASH 2407646301 +#define SIGNATURE_HASH 3282419669 #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" @@ -1243,7 +1243,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 22408 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1428,7 +1428,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 @@ -1557,7 +1557,7 @@ #define ts_show_vr_threshold_all true #define ts_show_vr_threshold_pins false #define ts_show_vvt_output true -#define TS_SIGNATURE "rusEFI master.2024.03.20.uaefi.2407646301" +#define TS_SIGNATURE "rusEFI master.2024.03.20.uaefi.3282419669" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/firmware/controllers/generated/signature_alphax-2chan.h b/firmware/controllers/generated/signature_alphax-2chan.h index 9518e8b6ff..30349f49b9 100644 --- a/firmware/controllers/generated/signature_alphax-2chan.h +++ b/firmware/controllers/generated/signature_alphax-2chan.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 2607350728 -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-2chan.2607350728" +#define SIGNATURE_HASH 3612178496 +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-2chan.3612178496" diff --git a/firmware/controllers/generated/signature_alphax-4chan.h b/firmware/controllers/generated/signature_alphax-4chan.h index 88c058436b..5a931e5d80 100644 --- a/firmware/controllers/generated/signature_alphax-4chan.h +++ b/firmware/controllers/generated/signature_alphax-4chan.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 3917756636 -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-4chan.3917756636" +#define SIGNATURE_HASH 2778743636 +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-4chan.2778743636" diff --git a/firmware/controllers/generated/signature_alphax-4chan_f7.h b/firmware/controllers/generated/signature_alphax-4chan_f7.h index d7823a4407..aae7d6ec34 100644 --- a/firmware/controllers/generated/signature_alphax-4chan_f7.h +++ b/firmware/controllers/generated/signature_alphax-4chan_f7.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 3917756636 -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-4chan_f7.3917756636" +#define SIGNATURE_HASH 2778743636 +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-4chan_f7.2778743636" diff --git a/firmware/controllers/generated/signature_alphax-8chan-revA.h b/firmware/controllers/generated/signature_alphax-8chan-revA.h index 153a2582bf..f3c36b3296 100644 --- a/firmware/controllers/generated/signature_alphax-8chan-revA.h +++ b/firmware/controllers/generated/signature_alphax-8chan-revA.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 2718970609 -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan-revA.2718970609" +#define SIGNATURE_HASH 3996404089 +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan-revA.3996404089" diff --git a/firmware/controllers/generated/signature_alphax-8chan.h b/firmware/controllers/generated/signature_alphax-8chan.h index ddc6cb2872..dca6b3b272 100644 --- a/firmware/controllers/generated/signature_alphax-8chan.h +++ b/firmware/controllers/generated/signature_alphax-8chan.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 3680373786 -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan.3680373786" +#define SIGNATURE_HASH 2541385618 +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan.2541385618" diff --git a/firmware/controllers/generated/signature_alphax-8chan_f7.h b/firmware/controllers/generated/signature_alphax-8chan_f7.h index 19012ee70d..b639af655b 100644 --- a/firmware/controllers/generated/signature_alphax-8chan_f7.h +++ b/firmware/controllers/generated/signature_alphax-8chan_f7.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 3680373786 -#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan_f7.3680373786" +#define SIGNATURE_HASH 2541385618 +#define TS_SIGNATURE "rusEFI master.2024.03.20.alphax-8chan_f7.2541385618" diff --git a/firmware/controllers/generated/signature_at_start_f435.h b/firmware/controllers/generated/signature_at_start_f435.h index 621c7875ad..99206cca02 100644 --- a/firmware/controllers/generated/signature_at_start_f435.h +++ b/firmware/controllers/generated/signature_at_start_f435.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 4126914918 -#define TS_SIGNATURE "rusEFI master.2024.03.20.at_start_f435.4126914918" +#define SIGNATURE_HASH 3118449390 +#define TS_SIGNATURE "rusEFI master.2024.03.20.at_start_f435.3118449390" diff --git a/firmware/controllers/generated/signature_atlas.h b/firmware/controllers/generated/signature_atlas.h index 4c84a61730..9b0eab3740 100644 --- a/firmware/controllers/generated/signature_atlas.h +++ b/firmware/controllers/generated/signature_atlas.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 2986110248 -#define TS_SIGNATURE "rusEFI master.2024.03.20.atlas.2986110248" +#define SIGNATURE_HASH 4258797216 +#define TS_SIGNATURE "rusEFI master.2024.03.20.atlas.4258797216" diff --git a/firmware/controllers/generated/signature_f407-discovery.h b/firmware/controllers/generated/signature_f407-discovery.h index d5c47fea1e..170921a650 100644 --- a/firmware/controllers/generated/signature_f407-discovery.h +++ b/firmware/controllers/generated/signature_f407-discovery.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 1370112519 -#define TS_SIGNATURE "rusEFI master.2024.03.20.f407-discovery.1370112519" +#define SIGNATURE_HASH 495860111 +#define TS_SIGNATURE "rusEFI master.2024.03.20.f407-discovery.495860111" diff --git a/firmware/controllers/generated/signature_f429-discovery.h b/firmware/controllers/generated/signature_f429-discovery.h index 9060c36b53..693537a94c 100644 --- a/firmware/controllers/generated/signature_f429-discovery.h +++ b/firmware/controllers/generated/signature_f429-discovery.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 4126914918 -#define TS_SIGNATURE "rusEFI master.2024.03.20.f429-discovery.4126914918" +#define SIGNATURE_HASH 3118449390 +#define TS_SIGNATURE "rusEFI master.2024.03.20.f429-discovery.3118449390" diff --git a/firmware/controllers/generated/signature_f469-discovery.h b/firmware/controllers/generated/signature_f469-discovery.h index 47d0ac0ebb..925a6bd1fc 100644 --- a/firmware/controllers/generated/signature_f469-discovery.h +++ b/firmware/controllers/generated/signature_f469-discovery.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 3341598709 -#define TS_SIGNATURE "rusEFI master.2024.03.20.f469-discovery.3341598709" +#define SIGNATURE_HASH 2332607613 +#define TS_SIGNATURE "rusEFI master.2024.03.20.f469-discovery.2332607613" diff --git a/firmware/controllers/generated/signature_frankenso_na6.h b/firmware/controllers/generated/signature_frankenso_na6.h index 2a0f3c5b0b..f1e2f76698 100644 --- a/firmware/controllers/generated/signature_frankenso_na6.h +++ b/firmware/controllers/generated/signature_frankenso_na6.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 2742603133 -#define TS_SIGNATURE "rusEFI master.2024.03.20.frankenso_na6.2742603133" +#define SIGNATURE_HASH 4015830773 +#define TS_SIGNATURE "rusEFI master.2024.03.20.frankenso_na6.4015830773" diff --git a/firmware/controllers/generated/signature_haba208.h b/firmware/controllers/generated/signature_haba208.h index 81d9d8c887..0e3d032863 100644 --- a/firmware/controllers/generated/signature_haba208.h +++ b/firmware/controllers/generated/signature_haba208.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 4126914918 -#define TS_SIGNATURE "rusEFI master.2024.03.20.haba208.4126914918" +#define SIGNATURE_HASH 3118449390 +#define TS_SIGNATURE "rusEFI master.2024.03.20.haba208.3118449390" diff --git a/firmware/controllers/generated/signature_hellen-112-17.h b/firmware/controllers/generated/signature_hellen-112-17.h index 0e3bfa7caa..f970edaa69 100644 --- a/firmware/controllers/generated/signature_hellen-112-17.h +++ b/firmware/controllers/generated/signature_hellen-112-17.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 2096308706 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-112-17.2096308706" +#define SIGNATURE_HASH 819419754 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-112-17.819419754" diff --git a/firmware/controllers/generated/signature_hellen-gm-e67.h b/firmware/controllers/generated/signature_hellen-gm-e67.h index 052116e694..7d161b6b89 100644 --- a/firmware/controllers/generated/signature_hellen-gm-e67.h +++ b/firmware/controllers/generated/signature_hellen-gm-e67.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 964878046 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-gm-e67.964878046" +#define SIGNATURE_HASH 1973855574 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-gm-e67.1973855574" diff --git a/firmware/controllers/generated/signature_hellen-honda-k.h b/firmware/controllers/generated/signature_hellen-honda-k.h index e98b6bf3fe..5dfbd57949 100644 --- a/firmware/controllers/generated/signature_hellen-honda-k.h +++ b/firmware/controllers/generated/signature_hellen-honda-k.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 3238994525 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-honda-k.3238994525" +#define SIGNATURE_HASH 2368428501 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-honda-k.2368428501" diff --git a/firmware/controllers/generated/signature_hellen-nb1.h b/firmware/controllers/generated/signature_hellen-nb1.h index 2d613a89f1..9480f94893 100644 --- a/firmware/controllers/generated/signature_hellen-nb1.h +++ b/firmware/controllers/generated/signature_hellen-nb1.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 484659014 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-nb1.484659014" +#define SIGNATURE_HASH 1355232462 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen-nb1.1355232462" diff --git a/firmware/controllers/generated/signature_hellen121nissan.h b/firmware/controllers/generated/signature_hellen121nissan.h index d446a1b70c..b8c02fb2a4 100644 --- a/firmware/controllers/generated/signature_hellen121nissan.h +++ b/firmware/controllers/generated/signature_hellen121nissan.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 3628144497 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen121nissan.3628144497" +#define SIGNATURE_HASH 2489675001 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen121nissan.2489675001" diff --git a/firmware/controllers/generated/signature_hellen121vag.h b/firmware/controllers/generated/signature_hellen121vag.h index b7f6ece54e..c8d30bd1d2 100644 --- a/firmware/controllers/generated/signature_hellen121vag.h +++ b/firmware/controllers/generated/signature_hellen121vag.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 3313673344 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen121vag.3313673344" +#define SIGNATURE_HASH 2309414664 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen121vag.2309414664" diff --git a/firmware/controllers/generated/signature_hellen128.h b/firmware/controllers/generated/signature_hellen128.h index 8a84462621..ab2ac79f8d 100644 --- a/firmware/controllers/generated/signature_hellen128.h +++ b/firmware/controllers/generated/signature_hellen128.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 409572241 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen128.409572241" +#define SIGNATURE_HASH 1414391833 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen128.1414391833" diff --git a/firmware/controllers/generated/signature_hellen154hyundai.h b/firmware/controllers/generated/signature_hellen154hyundai.h index 59357bdc04..325f136247 100644 --- a/firmware/controllers/generated/signature_hellen154hyundai.h +++ b/firmware/controllers/generated/signature_hellen154hyundai.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 2576587691 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen154hyundai.2576587691" +#define SIGNATURE_HASH 3585597475 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen154hyundai.3585597475" diff --git a/firmware/controllers/generated/signature_hellen154hyundai_f7.h b/firmware/controllers/generated/signature_hellen154hyundai_f7.h index 17f2da61d6..103d58354f 100644 --- a/firmware/controllers/generated/signature_hellen154hyundai_f7.h +++ b/firmware/controllers/generated/signature_hellen154hyundai_f7.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 2576587691 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen154hyundai_f7.2576587691" +#define SIGNATURE_HASH 3585597475 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen154hyundai_f7.3585597475" diff --git a/firmware/controllers/generated/signature_hellen72.h b/firmware/controllers/generated/signature_hellen72.h index 57d3f25f3c..1f0367abd7 100644 --- a/firmware/controllers/generated/signature_hellen72.h +++ b/firmware/controllers/generated/signature_hellen72.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 1964658170 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen72.1964658170" +#define SIGNATURE_HASH 960378482 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen72.960378482" diff --git a/firmware/controllers/generated/signature_hellen81.h b/firmware/controllers/generated/signature_hellen81.h index 3090d6961d..91c86b3e68 100644 --- a/firmware/controllers/generated/signature_hellen81.h +++ b/firmware/controllers/generated/signature_hellen81.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 2422942080 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen81.2422942080" +#define SIGNATURE_HASH 3696185864 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen81.3696185864" diff --git a/firmware/controllers/generated/signature_hellen88bmw.h b/firmware/controllers/generated/signature_hellen88bmw.h index a3aa64c2d3..b072e26677 100644 --- a/firmware/controllers/generated/signature_hellen88bmw.h +++ b/firmware/controllers/generated/signature_hellen88bmw.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 2269658307 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen88bmw.2269658307" +#define SIGNATURE_HASH 3412870987 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellen88bmw.3412870987" diff --git a/firmware/controllers/generated/signature_hellenNA6.h b/firmware/controllers/generated/signature_hellenNA6.h index 1d82b5771b..5a16c737e6 100644 --- a/firmware/controllers/generated/signature_hellenNA6.h +++ b/firmware/controllers/generated/signature_hellenNA6.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 1633573510 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellenNA6.1633573510" +#define SIGNATURE_HASH 762978574 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellenNA6.762978574" diff --git a/firmware/controllers/generated/signature_hellenNA8_96.h b/firmware/controllers/generated/signature_hellenNA8_96.h index cbc357f629..d99e5b864f 100644 --- a/firmware/controllers/generated/signature_hellenNA8_96.h +++ b/firmware/controllers/generated/signature_hellenNA8_96.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 2659457096 -#define TS_SIGNATURE "rusEFI master.2024.03.20.hellenNA8_96.2659457096" +#define SIGNATURE_HASH 3533726656 +#define TS_SIGNATURE "rusEFI master.2024.03.20.hellenNA8_96.3533726656" diff --git a/firmware/controllers/generated/signature_m74_9.h b/firmware/controllers/generated/signature_m74_9.h index 9dcb5244f3..62f45194bc 100644 --- a/firmware/controllers/generated/signature_m74_9.h +++ b/firmware/controllers/generated/signature_m74_9.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 1094812089 -#define TS_SIGNATURE "rusEFI master.2024.03.20.m74_9.1094812089" +#define SIGNATURE_HASH 224786993 +#define TS_SIGNATURE "rusEFI master.2024.03.20.m74_9.224786993" diff --git a/firmware/controllers/generated/signature_mre_f4.h b/firmware/controllers/generated/signature_mre_f4.h index 31a932139f..567db1c1ea 100644 --- a/firmware/controllers/generated/signature_mre_f4.h +++ b/firmware/controllers/generated/signature_mre_f4.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 4130662297 -#define TS_SIGNATURE "rusEFI master.2024.03.20.mre_f4.4130662297" +#define SIGNATURE_HASH 3121650705 +#define TS_SIGNATURE "rusEFI master.2024.03.20.mre_f4.3121650705" diff --git a/firmware/controllers/generated/signature_mre_f7.h b/firmware/controllers/generated/signature_mre_f7.h index 8b7852c0a4..2ec92b3183 100644 --- a/firmware/controllers/generated/signature_mre_f7.h +++ b/firmware/controllers/generated/signature_mre_f7.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 4130662297 -#define TS_SIGNATURE "rusEFI master.2024.03.20.mre_f7.4130662297" +#define SIGNATURE_HASH 3121650705 +#define TS_SIGNATURE "rusEFI master.2024.03.20.mre_f7.3121650705" diff --git a/firmware/controllers/generated/signature_nucleo_f413.h b/firmware/controllers/generated/signature_nucleo_f413.h index 00cd118fbd..795ea56420 100644 --- a/firmware/controllers/generated/signature_nucleo_f413.h +++ b/firmware/controllers/generated/signature_nucleo_f413.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 4126914918 -#define TS_SIGNATURE "rusEFI master.2024.03.20.nucleo_f413.4126914918" +#define SIGNATURE_HASH 3118449390 +#define TS_SIGNATURE "rusEFI master.2024.03.20.nucleo_f413.3118449390" diff --git a/firmware/controllers/generated/signature_prometheus_405.h b/firmware/controllers/generated/signature_prometheus_405.h index 8a160473c2..cd218b2aef 100644 --- a/firmware/controllers/generated/signature_prometheus_405.h +++ b/firmware/controllers/generated/signature_prometheus_405.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 3312415990 -#define TS_SIGNATURE "rusEFI master.2024.03.20.prometheus_405.3312415990" +#define SIGNATURE_HASH 2303397758 +#define TS_SIGNATURE "rusEFI master.2024.03.20.prometheus_405.2303397758" diff --git a/firmware/controllers/generated/signature_prometheus_469.h b/firmware/controllers/generated/signature_prometheus_469.h index f31989fd40..d9cf8b06e4 100644 --- a/firmware/controllers/generated/signature_prometheus_469.h +++ b/firmware/controllers/generated/signature_prometheus_469.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 3312415990 -#define TS_SIGNATURE "rusEFI master.2024.03.20.prometheus_469.3312415990" +#define SIGNATURE_HASH 2303397758 +#define TS_SIGNATURE "rusEFI master.2024.03.20.prometheus_469.2303397758" diff --git a/firmware/controllers/generated/signature_proteus_f4.h b/firmware/controllers/generated/signature_proteus_f4.h index e08c29e3ed..7c89f3834e 100644 --- a/firmware/controllers/generated/signature_proteus_f4.h +++ b/firmware/controllers/generated/signature_proteus_f4.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 475815825 -#define TS_SIGNATURE "rusEFI master.2024.03.20.proteus_f4.475815825" +#define SIGNATURE_HASH 1350050841 +#define TS_SIGNATURE "rusEFI master.2024.03.20.proteus_f4.1350050841" diff --git a/firmware/controllers/generated/signature_proteus_f7.h b/firmware/controllers/generated/signature_proteus_f7.h index eceaa5241b..d8ca4b457d 100644 --- a/firmware/controllers/generated/signature_proteus_f7.h +++ b/firmware/controllers/generated/signature_proteus_f7.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 475815825 -#define TS_SIGNATURE "rusEFI master.2024.03.20.proteus_f7.475815825" +#define SIGNATURE_HASH 1350050841 +#define TS_SIGNATURE "rusEFI master.2024.03.20.proteus_f7.1350050841" diff --git a/firmware/controllers/generated/signature_proteus_h7.h b/firmware/controllers/generated/signature_proteus_h7.h index 1b75488388..9cb1af7b29 100644 --- a/firmware/controllers/generated/signature_proteus_h7.h +++ b/firmware/controllers/generated/signature_proteus_h7.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 475815825 -#define TS_SIGNATURE "rusEFI master.2024.03.20.proteus_h7.475815825" +#define SIGNATURE_HASH 1350050841 +#define TS_SIGNATURE "rusEFI master.2024.03.20.proteus_h7.1350050841" diff --git a/firmware/controllers/generated/signature_s105.h b/firmware/controllers/generated/signature_s105.h index e77644c756..ab95bf40a4 100644 --- a/firmware/controllers/generated/signature_s105.h +++ b/firmware/controllers/generated/signature_s105.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 1248868772 -#define TS_SIGNATURE "rusEFI master.2024.03.20.s105.1248868772" +#define SIGNATURE_HASH 106185260 +#define TS_SIGNATURE "rusEFI master.2024.03.20.s105.106185260" diff --git a/firmware/controllers/generated/signature_small-can-board.h b/firmware/controllers/generated/signature_small-can-board.h index cebefc8d38..0ef07e8e6d 100644 --- a/firmware/controllers/generated/signature_small-can-board.h +++ b/firmware/controllers/generated/signature_small-can-board.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 3411703279 -#define TS_SIGNATURE "rusEFI master.2024.03.20.small-can-board.3411703279" +#define SIGNATURE_HASH 2273185383 +#define TS_SIGNATURE "rusEFI master.2024.03.20.small-can-board.2273185383" diff --git a/firmware/controllers/generated/signature_stm32f429_nucleo.h b/firmware/controllers/generated/signature_stm32f429_nucleo.h index 0f7ba9ee48..9fd71c766b 100644 --- a/firmware/controllers/generated/signature_stm32f429_nucleo.h +++ b/firmware/controllers/generated/signature_stm32f429_nucleo.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 4126914918 -#define TS_SIGNATURE "rusEFI master.2024.03.20.stm32f429_nucleo.4126914918" +#define SIGNATURE_HASH 3118449390 +#define TS_SIGNATURE "rusEFI master.2024.03.20.stm32f429_nucleo.3118449390" diff --git a/firmware/controllers/generated/signature_stm32f767_nucleo.h b/firmware/controllers/generated/signature_stm32f767_nucleo.h index 41b4cee961..e3cd7f2e22 100644 --- a/firmware/controllers/generated/signature_stm32f767_nucleo.h +++ b/firmware/controllers/generated/signature_stm32f767_nucleo.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 4126914918 -#define TS_SIGNATURE "rusEFI master.2024.03.20.stm32f767_nucleo.4126914918" +#define SIGNATURE_HASH 3118449390 +#define TS_SIGNATURE "rusEFI master.2024.03.20.stm32f767_nucleo.3118449390" diff --git a/firmware/controllers/generated/signature_stm32h743_nucleo.h b/firmware/controllers/generated/signature_stm32h743_nucleo.h index 6e87236251..1a3f252a08 100644 --- a/firmware/controllers/generated/signature_stm32h743_nucleo.h +++ b/firmware/controllers/generated/signature_stm32h743_nucleo.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 4126914918 -#define TS_SIGNATURE "rusEFI master.2024.03.20.stm32h743_nucleo.4126914918" +#define SIGNATURE_HASH 3118449390 +#define TS_SIGNATURE "rusEFI master.2024.03.20.stm32h743_nucleo.3118449390" diff --git a/firmware/controllers/generated/signature_t-b-g.h b/firmware/controllers/generated/signature_t-b-g.h index 008bb9c009..9f24fcd2a1 100644 --- a/firmware/controllers/generated/signature_t-b-g.h +++ b/firmware/controllers/generated/signature_t-b-g.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 4126914918 -#define TS_SIGNATURE "rusEFI master.2024.03.20.t-b-g.4126914918" +#define SIGNATURE_HASH 3118449390 +#define TS_SIGNATURE "rusEFI master.2024.03.20.t-b-g.3118449390" diff --git a/firmware/controllers/generated/signature_tdg-pdm8.h b/firmware/controllers/generated/signature_tdg-pdm8.h index 163273e750..a69595e387 100644 --- a/firmware/controllers/generated/signature_tdg-pdm8.h +++ b/firmware/controllers/generated/signature_tdg-pdm8.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 2136315204 -#define TS_SIGNATURE "rusEFI master.2024.03.20.tdg-pdm8.2136315204" +#define SIGNATURE_HASH 863104716 +#define TS_SIGNATURE "rusEFI master.2024.03.20.tdg-pdm8.863104716" diff --git a/firmware/controllers/generated/signature_uaefi.h b/firmware/controllers/generated/signature_uaefi.h index 0fb346357a..f1554631eb 100644 --- a/firmware/controllers/generated/signature_uaefi.h +++ b/firmware/controllers/generated/signature_uaefi.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 2407646301 -#define TS_SIGNATURE "rusEFI master.2024.03.20.uaefi.2407646301" +#define SIGNATURE_HASH 3282419669 +#define TS_SIGNATURE "rusEFI master.2024.03.20.uaefi.3282419669" diff --git a/firmware/controllers/lua/generated/value_lookup_generated.cpp b/firmware/controllers/lua/generated/value_lookup_generated.cpp index 18d41324e4..6d8f17c3fa 100644 --- a/firmware/controllers/lua/generated/value_lookup_generated.cpp +++ b/firmware/controllers/lua/generated/value_lookup_generated.cpp @@ -31,12 +31,45 @@ float getConfigValueByName(const char *name) { // maxAcClt case 1569342546: return engineConfiguration->maxAcClt; +// compressionRatio + case 355839382: + return engineConfiguration->compressionRatio; +// wastegatePositionMin + case 2097342691: + return engineConfiguration->wastegatePositionMin; +// wastegatePositionMax + case 2097342437: + return engineConfiguration->wastegatePositionMax; +// idlePositionMin + case -1256791716: + return engineConfiguration->idlePositionMin; +// idlePositionMax + case -1256791970: + return engineConfiguration->idlePositionMax; +// etbExpAverageLength + case -86185846: + return engineConfiguration->etbExpAverageLength; +// launchFuelAdderPercent + case -904771683: + return engineConfiguration->launchFuelAdderPercent; +// etbJamTimeout + case 1057701663: + return engineConfiguration->etbJamTimeout; +// acIdleExtraOffset + case 1933500210: + return engineConfiguration->acIdleExtraOffset; +// manIdlePosition + case 1401746228: + return engineConfiguration->manIdlePosition; // multisparkMaxSparkingAngle case 402092253: return engineConfiguration->multisparkMaxSparkingAngle; // multisparkMaxExtraSparkCount case 726613349: return engineConfiguration->multisparkMaxExtraSparkCount; +// vvtControlMinRpm + case 1470846937: + return engineConfiguration->vvtControlMinRpm; // injector.flow case 1542550121: return engineConfiguration->injector.flow; @@ -232,6 +265,9 @@ float getConfigValueByName(const char *name) { // cylindersCount case -1578655365: return engineConfiguration->cylindersCount; +// justATempTest + case -48120222: + return engineConfiguration->justATempTest; // cylinderBore case 1425664391: return engineConfiguration->cylinderBore; @@ -256,6 +292,9 @@ float getConfigValueByName(const char *name) { // maxIdleVss case 1408421157: return engineConfiguration->maxIdleVss; +// camDecoder2jzPrecision + case 306303086: + return engineConfiguration->camDecoder2jzPrecision; // minOilPressureAfterStart case -855687130: return engineConfiguration->minOilPressureAfterStart; @@ -283,12 +322,6 @@ float getConfigValueByName(const char *name) { // canSleepPeriodMs case 296563315: return engineConfiguration->canSleepPeriodMs; -// camDecoder2jzPrecision - case 306303086: - return engineConfiguration->camDecoder2jzPrecision; -// justATempTest - case -48120222: - return engineConfiguration->justATempTest; // byFirmwareVersion case 171869155: return engineConfiguration->byFirmwareVersion; @@ -346,21 +379,18 @@ float getConfigValueByName(const char *name) { // idle.solenoidFrequency case -568903712: return engineConfiguration->idle.solenoidFrequency; -// manIdlePosition - case 1401746228: - return engineConfiguration->manIdlePosition; // knockRetardAggression case 1989648303: return engineConfiguration->knockRetardAggression; // knockRetardReapplyRate case -938609466: return engineConfiguration->knockRetardReapplyRate; -// vssFilterReciprocal - case -495855925: - return engineConfiguration->vssFilterReciprocal; // vssGearRatio case -213773345: return engineConfiguration->vssGearRatio; +// vssFilterReciprocal + case -495855925: + return engineConfiguration->vssFilterReciprocal; // vssToothCount case -1958312328: return engineConfiguration->vssToothCount; @@ -373,33 +403,15 @@ float getConfigValueByName(const char *name) { // mc33_t_min_boost case 1129109559: return engineConfiguration->mc33_t_min_boost; -// acIdleExtraOffset - case 1933500210: - return engineConfiguration->acIdleExtraOffset; // finalGearRatio case -869432403: return engineConfiguration->finalGearRatio; -// tcuInputSpeedSensorTeeth - case -2116746650: - return engineConfiguration->tcuInputSpeedSensorTeeth; -// wastegatePositionMin - case 2097342691: - return engineConfiguration->wastegatePositionMin; -// wastegatePositionMax - case 2097342437: - return engineConfiguration->wastegatePositionMax; -// idlePositionMin - case -1256791716: - return engineConfiguration->idlePositionMin; -// idlePositionMax - case -1256791970: - return engineConfiguration->idlePositionMax; // tunerStudioSerialSpeed case 1467553180: return engineConfiguration->tunerStudioSerialSpeed; -// compressionRatio - case 355839382: - return engineConfiguration->compressionRatio; +// tcuInputSpeedSensorTeeth + case -2116746650: + return engineConfiguration->tcuInputSpeedSensorTeeth; // fordInjectorSmallPulseSlope case -1465119085: return engineConfiguration->fordInjectorSmallPulseSlope; @@ -1357,18 +1369,6 @@ float getConfigValueByName(const char *name) { // auxFrequencyFilter case 383307083: return engineConfiguration->auxFrequencyFilter; -// vvtControlMinRpm - case 1470846937: - return engineConfiguration->vvtControlMinRpm; -// launchFuelAdderPercent - case -904771683: - return engineConfiguration->launchFuelAdderPercent; -// etbJamTimeout - case 1057701663: - return engineConfiguration->etbJamTimeout; -// etbExpAverageLength - case -86185846: - return engineConfiguration->etbExpAverageLength; // coastingFuelCutRpmHigh case 1272017572: return engineConfiguration->coastingFuelCutRpmHigh; @@ -1842,6 +1842,56 @@ bool setConfigValueByName(const char *name, float value) { { engineConfiguration->maxAcClt = (int)value; return 1; + } + case 355839382: + { + engineConfiguration->compressionRatio = value; + return 1; + } + case 2097342691: + { + engineConfiguration->wastegatePositionMin = (int)value; + return 1; + } + case 2097342437: + { + engineConfiguration->wastegatePositionMax = (int)value; + return 1; + } + case -1256791716: + { + engineConfiguration->idlePositionMin = (int)value; + return 1; + } + case -1256791970: + { + engineConfiguration->idlePositionMax = (int)value; + return 1; + } + case -86185846: + { + engineConfiguration->etbExpAverageLength = (int)value; + return 1; + } + case -904771683: + { + engineConfiguration->launchFuelAdderPercent = (int)value; + return 1; + } + case 1057701663: + { + engineConfiguration->etbJamTimeout = (int)value; + return 1; + } + case 1933500210: + { + engineConfiguration->acIdleExtraOffset = (int)value; + return 1; + } + case 1401746228: + { + engineConfiguration->manIdlePosition = value; + return 1; } case 402092253: { @@ -1852,6 +1902,11 @@ bool setConfigValueByName(const char *name, float value) { { engineConfiguration->multisparkMaxExtraSparkCount = (int)value; return 1; + } + case 1470846937: + { + engineConfiguration->vvtControlMinRpm = (int)value; + return 1; } case 1542550121: { @@ -2177,6 +2232,11 @@ bool setConfigValueByName(const char *name, float value) { { engineConfiguration->cylindersCount = (int)value; return 1; + } + case -48120222: + { + engineConfiguration->justATempTest = (int)value; + return 1; } case 1425664391: { @@ -2217,6 +2277,11 @@ bool setConfigValueByName(const char *name, float value) { { engineConfiguration->maxIdleVss = (int)value; return 1; + } + case 306303086: + { + engineConfiguration->camDecoder2jzPrecision = (int)value; + return 1; } case -855687130: { @@ -2262,16 +2327,6 @@ bool setConfigValueByName(const char *name, float value) { { engineConfiguration->canSleepPeriodMs = (int)value; return 1; - } - case 306303086: - { - engineConfiguration->camDecoder2jzPrecision = (int)value; - return 1; - } - case -48120222: - { - engineConfiguration->justATempTest = (int)value; - return 1; } case 171869155: { @@ -2367,11 +2422,6 @@ bool setConfigValueByName(const char *name, float value) { { engineConfiguration->idle.solenoidFrequency = (int)value; return 1; - } - case 1401746228: - { - engineConfiguration->manIdlePosition = value; - return 1; } case 1989648303: { @@ -2382,16 +2432,16 @@ bool setConfigValueByName(const char *name, float value) { { engineConfiguration->knockRetardReapplyRate = (int)value; return 1; - } - case -495855925: - { - engineConfiguration->vssFilterReciprocal = (int)value; - return 1; } case -213773345: { engineConfiguration->vssGearRatio = (int)value; return 1; + } + case -495855925: + { + engineConfiguration->vssFilterReciprocal = (int)value; + return 1; } case -1958312328: { @@ -2412,50 +2462,20 @@ bool setConfigValueByName(const char *name, float value) { { engineConfiguration->mc33_t_min_boost = (int)value; return 1; - } - case 1933500210: - { - engineConfiguration->acIdleExtraOffset = (int)value; - return 1; } case -869432403: { engineConfiguration->finalGearRatio = (int)value; return 1; - } - case -2116746650: - { - engineConfiguration->tcuInputSpeedSensorTeeth = (int)value; - return 1; - } - case 2097342691: - { - engineConfiguration->wastegatePositionMin = (int)value; - return 1; - } - case 2097342437: - { - engineConfiguration->wastegatePositionMax = (int)value; - return 1; - } - case -1256791716: - { - engineConfiguration->idlePositionMin = (int)value; - return 1; - } - case -1256791970: - { - engineConfiguration->idlePositionMax = (int)value; - return 1; } case 1467553180: { engineConfiguration->tunerStudioSerialSpeed = (int)value; return 1; } - case 355839382: + case -2116746650: { - engineConfiguration->compressionRatio = value; + engineConfiguration->tcuInputSpeedSensorTeeth = (int)value; return 1; } case -1465119085: @@ -4052,26 +4072,6 @@ bool setConfigValueByName(const char *name, float value) { { engineConfiguration->auxFrequencyFilter = value; return 1; - } - case 1470846937: - { - engineConfiguration->vvtControlMinRpm = (int)value; - return 1; - } - case -904771683: - { - engineConfiguration->launchFuelAdderPercent = (int)value; - return 1; - } - case 1057701663: - { - engineConfiguration->etbJamTimeout = (int)value; - return 1; - } - case -86185846: - { - engineConfiguration->etbExpAverageLength = (int)value; - return 1; } case 1272017572: { diff --git a/firmware/controllers/lua/generated/value_lookup_generated.md b/firmware/controllers/lua/generated/value_lookup_generated.md index b9b87010f5..c469de4a56 100644 --- a/firmware/controllers/lua/generated/value_lookup_generated.md +++ b/firmware/controllers/lua/generated/value_lookup_generated.md @@ -25,12 +25,45 @@ 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 + +### etbExpAverageLength +By the way ETB PID runs at 500hz, length in 1/500 of second here. + +### launchFuelAdderPercent + + +### 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) +### vvtControlMinRpm + + ### 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 @@ -226,6 +259,9 @@ Engine displacement in litres ### cylindersCount Number of cylinder the engine has. +### justATempTest +null + ### cylinderBore Cylinder diameter in mm. @@ -250,6 +286,9 @@ How many consecutive gap rations have to match expected ranges for sync to happe ### maxIdleVss Above this speed, disable closed loop idle control. Set to 0 to disable (allow closed loop idle at any speed). +### camDecoder2jzPrecision +null + ### 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. @@ -277,12 +316,6 @@ Number of revolutions per kilometer for the wheels your vehicle speed sensor is ### canSleepPeriodMs CANbus thread period in ms -### camDecoder2jzPrecision -null - -### justATempTest -null - ### byFirmwareVersion @@ -340,21 +373,18 @@ kPa value at high volts ### idle.solenoidFrequency -### 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. -### 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. @@ -367,32 +397,14 @@ How many consecutive VVT gap rations have to match expected ranges for sync to h ### 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. -### acIdleExtraOffset -Additional idle % while A/C is active - ### finalGearRatio Ratio between the wheels and your transmission output. -### tcuInputSpeedSensorTeeth -null - -### 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 +### tcuInputSpeedSensorTeeth +null ### fordInjectorSmallPulseSlope @@ -1351,18 +1363,6 @@ Cooling fan turn-off temperature threshold, in Celsius ### auxFrequencyFilter -### vvtControlMinRpm - - -### launchFuelAdderPercent - - -### 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. diff --git a/firmware/tunerstudio/generated/rusefi.ini b/firmware/tunerstudio/generated/rusefi.ini index 1be5d9280d..cff8d0fd58 100644 --- a/firmware/tunerstudio/generated/rusefi.ini +++ b/firmware/tunerstudio/generated/rusefi.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.f407-discovery.1370112519" + signature = "rusEFI master.2024.03.20.f407-discovery.495860111" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.f407-discovery.1370112519" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.f407-discovery.495860111" ; 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 Wed Mar 20 15:36:20 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:50 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_alphax-2chan.ini b/firmware/tunerstudio/generated/rusefi_alphax-2chan.ini index f52520096e..d9daad22ff 100644 --- a/firmware/tunerstudio/generated/rusefi_alphax-2chan.ini +++ b/firmware/tunerstudio/generated/rusefi_alphax-2chan.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.alphax-2chan.2607350728" + signature = "rusEFI master.2024.03.20.alphax-2chan.3612178496" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.alphax-2chan.2607350728" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.alphax-2chan.3612178496" ; 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="NONE","INVALID","B4 - O2","On-board MAP","INVALID","B5 - TPS","A2 Battery Sense","C7 - CAM Hall/Digital","INVALID","X1 - AIN1","INVALID","INVALID","B2 - MAP","B7 - CLT","B3 - IAT","X3 - AIN2","X7 - AIN4" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:26 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:55 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_alphax-4chan.ini b/firmware/tunerstudio/generated/rusefi_alphax-4chan.ini index d59ebf449d..8afadd86b7 100644 --- a/firmware/tunerstudio/generated/rusefi_alphax-4chan.ini +++ b/firmware/tunerstudio/generated/rusefi_alphax-4chan.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.alphax-4chan.3917756636" + signature = "rusEFI master.2024.03.20.alphax-4chan.2778743636" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.alphax-4chan.3917756636" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.alphax-4chan.2778743636" ; 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="NONE","INVALID","B4 - O2","On-board MAP","D5 - PPS","B5 - TPS","F7 - Ignition Key Voltage","C7 - CAM Hall/Digital","X7 - AIN4","D4 - TPS2","INVALID","X5 - AIN3","B2 - MAP","B7 - CLT","B3 - IAT","F6 - PPS2","INVALID","INVALID","INVALID","INVALID","X3 - AIN2","X1 - AIN1 and D5 on older boards" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:34 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:04 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_alphax-4chan_f7.ini b/firmware/tunerstudio/generated/rusefi_alphax-4chan_f7.ini index 8cdc0a473c..6591fd7925 100644 --- a/firmware/tunerstudio/generated/rusefi_alphax-4chan_f7.ini +++ b/firmware/tunerstudio/generated/rusefi_alphax-4chan_f7.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.alphax-4chan_f7.3917756636" + signature = "rusEFI master.2024.03.20.alphax-4chan_f7.2778743636" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.alphax-4chan_f7.3917756636" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.alphax-4chan_f7.2778743636" ; 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="NONE","INVALID","B4 - O2","On-board MAP","D5 - PPS","B5 - TPS","F7 - Ignition Key Voltage","C7 - CAM Hall/Digital","X7 - AIN4","D4 - TPS2","INVALID","X5 - AIN3","B2 - MAP","B7 - CLT","B3 - IAT","F6 - PPS2","INVALID","INVALID","INVALID","INVALID","X3 - AIN2","X1 - AIN1 and D5 on older boards" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:35 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:05 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_alphax-8chan-revA.ini b/firmware/tunerstudio/generated/rusefi_alphax-8chan-revA.ini index 7342aae6a4..68d67ae902 100644 --- a/firmware/tunerstudio/generated/rusefi_alphax-8chan-revA.ini +++ b/firmware/tunerstudio/generated/rusefi_alphax-8chan-revA.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.alphax-8chan-revA.2718970609" + signature = "rusEFI master.2024.03.20.alphax-8chan-revA.3996404089" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.alphax-8chan-revA.2718970609" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.alphax-8chan-revA.3996404089" ; 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="NONE","INVALID","INVALID","INVALID","17A - PPS","23C - TPS","Battery Sense","INVALID","15D - AN5","24C - TPS2","14A - Analog 1","22A - Analog 22","On-board MAP","16A - CLT","15A - IAT","31C - PPS2","33A - AN3","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","16D - AN6","INVALID","INVALID","INVALID","INVALID","7C - AT4","INVALID","6C - AT3","14D - AN4" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:27 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:57 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_alphax-8chan.ini b/firmware/tunerstudio/generated/rusefi_alphax-8chan.ini index 7dbbca11f4..70527d2e2a 100644 --- a/firmware/tunerstudio/generated/rusefi_alphax-8chan.ini +++ b/firmware/tunerstudio/generated/rusefi_alphax-8chan.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.alphax-8chan.3680373786" + signature = "rusEFI master.2024.03.20.alphax-8chan.2541385618" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.alphax-8chan.3680373786" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.alphax-8chan.2541385618" ; 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="NONE","INVALID","3A - Aux Analog 2","On-board MAP","32A - PPS Sensor Input","31A - TPS Sensor Input","24 - Ignition Key Voltage","INVALID","INVALID","19A - Aux Analog 6","1A - Aux Analog 1","2A - Aux Analog 4","INVALID","29A - CLT Sensor Input","27A - IAT Sensor Input","INVALID","12A - Aux Analog 8","INVALID","11A - Aux Analog 3","INVALID","34A - PPS2 Sensor Input","33A - TPS2 Sensor Input","INVALID","INVALID","INVALID","4A - Aux Analog 7","INVALID","10A - Aux Analog 5","INVALID","28A - Aux Temp 2","28A - Aux Temp 1","INVALID","20A - Aux Analog 9" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:21 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:51 UTC 2024 -pageSize = 22444 +pageSize = 22424 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,1452 +237,1428 @@ 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 -vrThreshold3_rpmBins = array, U08, 1316, [6], "rpm", 50.0, 0, 0, 12000, 0 -vrThreshold3_values = array, U08, 1322, [6], "volts", 0.01, 0, 0, 2.5, 2 -vrThreshold3_pin = bits, U16, 1328, [0:7], $gpio_list -gpPwmNote1 = string, ASCII, 1332, 16 -gpPwmNote2 = string, ASCII, 1348, 16 -gpPwmNote3 = string, ASCII, 1364, 16 -gpPwmNote4 = string, ASCII, 1380, 16 -tps2SecondaryMin = scalar, U16, 1396, "ADC", 1, 0, 0, 1000, 0 -tps2SecondaryMax = scalar, U16, 1398, "ADC", 1, 0, 0, 1000, 0 -widebandOnSecondBus = bits, U32, 1400, [0:0], "1", "2" -fuelClosedLoopCorrectionEnabled = bits, U32, 1400, [1:1], "false", "true" -oddFireEngine = bits, U32, 1400, [2:2], "false", "true" -boardUseTachPullUp = bits, U32, 1400, [3:3], "5v", "12v" -boardUseTempPullUp = bits, U32, 1400, [4:4], "Piggyback Mode", "With Pull Ups" -yesUnderstandLocking = bits, U32, 1400, [5:5], "no", "yes" -silentTriggerError = bits, U32, 1400, [6:6], "false", "true" -useLinearCltSensor = bits, U32, 1400, [7:7], "false", "true" -canReadEnabled = bits, U32, 1400, [8:8], "false", "true" -canWriteEnabled = bits, U32, 1400, [9:9], "false", "true" -useLinearIatSensor = bits, U32, 1400, [10:10], "false", "true" -boardUse2stepPullDown = bits, U32, 1400, [11:11], "With Pull Up", "With Pull Down" -tachPulseDurationAsDutyCycle = bits, U32, 1400, [12:12], "Constant time", "Duty cycle" -isAlternatorControlEnabled = bits, U32, 1400, [13:13], "false", "true" -invertPrimaryTriggerSignal = bits, U32, 1400, [14:14], "Rising", "Falling" -invertSecondaryTriggerSignal = bits, U32, 1400, [15:15], "Rising", "Falling" -cutFuelOnHardLimit = bits, U32, 1400, [16:16], "no", "yes" -cutSparkOnHardLimit = bits, U32, 1400, [17:17], "no", "yes" -launchFuelCutEnable = bits, U32, 1400, [18:18], "false", "true" -launchSparkCutEnable = bits, U32, 1400, [19:19], "false", "true" -boardUseCrankPullUp = bits, U32, 1400, [20:20], "VR", "Hall" -boardUseCamPullDown = bits, U32, 1400, [21:21], "With Pull Up", "With Pull Down" -boardUseCamVrPullUp = bits, U32, 1400, [22:22], "VR", "Hall" -boardUseD2PullDown = bits, U32, 1400, [23:23], "With Pull Up", "With Pull Down" -boardUseD3PullDown = bits, U32, 1400, [24:24], "With Pull Up", "With Pull Down" -boardUseD4PullDown = bits, U32, 1400, [25:25], "With Pull Up", "With Pull Down" -boardUseD5PullDown = bits, U32, 1400, [26:26], "With Pull Up", "With Pull Down" -verboseIsoTp = bits, U32, 1400, [27:27], "false", "true" -engineSnifferFocusOnInputs = bits, U32, 1400, [28:28], "false", "true" -launchActivateInverted = bits, U32, 1400, [29:29], "false", "true" -twoStroke = bits, U32, 1400, [30:30], "Four Stroke", "Two Stroke" -skippedWheelOnCam = bits, U32, 1400, [31:31], "On crankshaft", "On camshaft" -hipOutputChannel = bits, U08, 1404, [0:5], $adc_channel_e_list -acSwitch = bits, U16, 1406, [0:7], $switch_input_pin_e_list -vRefAdcChannel = bits, U08, 1408, [0:5], $adc_channel_e_list -etbNeutralPosition = scalar, U08, 1409, "%", 1, 0, 0, 100, 0 -idleMode = bits, U08, 1410, [0:0], "Open Loop + Closed Loop", "Open Loop" -isInjectionEnabled = bits, U32, 1412, [0:0], "false", "true" -isIgnitionEnabled = bits, U32, 1412, [1:1], "false", "true" -isCylinderCleanupEnabled = bits, U32, 1412, [2:2], "false", "true" -complexWallModel = bits, U32, 1412, [3:3], "Basic (constants)", "Advanced (tables)" -alwaysInstantRpm = bits, U32, 1412, [4:4], "false", "true" -isMapAveragingEnabled = bits, U32, 1412, [5:5], "false", "true" -overrideCrankingIacSetting = bits, U32, 1412, [6:6], "false", "true" -useSeparateAdvanceForIdle = bits, U32, 1412, [7:7], "false", "true" -isWaveAnalyzerEnabled = bits, U32, 1412, [8:8], "false", "true" -useSeparateVeForIdle = bits, U32, 1412, [9:9], "false", "true" -verboseTriggerSynchDetails = bits, U32, 1412, [10:10], "false", "true" -isManualSpinningMode = bits, U32, 1412, [11:11], "false", "true" -cutFuelInAcr = bits, U32, 1412, [12:12], "false", "true" -hondaK = bits, U32, 1412, [13:13], "false", "true" -twoWireBatchIgnition = bits, U32, 1412, [14:14], "false", "true" -useFixedBaroCorrFromMap = bits, U32, 1412, [15:15], "false", "true" -useSeparateAdvanceForCranking = bits, U32, 1412, [16:16], "Fixed (auto taper)", "Table" -useAdvanceCorrectionsForCranking = bits, U32, 1412, [17:17], "false", "true" -flexCranking = bits, U32, 1412, [18:18], "false", "true" -useIacPidMultTable = bits, U32, 1412, [19:19], "false", "true" -isBoostControlEnabled = bits, U32, 1412, [20:20], "false", "true" -launchSmoothRetard = bits, U32, 1412, [21:21], "false", "true" -isPhaseSyncRequiredForIgnition = bits, U32, 1412, [22:22], "false", "true" -useCltBasedRpmLimit = bits, U32, 1412, [23:23], "no", "yes" -forceO2Heating = bits, U32, 1412, [24:24], "no", "yes" -invertVvtControlIntake = bits, U32, 1412, [25:25], "advance", "retard" -invertVvtControlExhaust = bits, U32, 1412, [26:26], "advance", "retard" -useBiQuadOnAuxSpeedSensors = bits, U32, 1412, [27:27], "false", "true" -sdTriggerLog = bits, U32, 1412, [28:28], "normal", "trigger" -ALSActivateInverted = bits, U32, 1412, [29:29], "false", "true" -stepper_dc_use_two_wires = bits, U32, 1412, [30:30], "false", "true" -watchOutForLinearTime = bits, U32, 1412, [31:31], "false", "true" -engineChartSize = scalar, U32, 1416, "count", 1, 0, 0, 300, 0 -turboSpeedSensorMultiplier = scalar, F32, 1420, "mult", 1, 0, 0, 7000, 3 -camInputsDebug1 = bits, U16, 1424, [0:7], $gpio_list -camInputsDebug2 = bits, U16, 1426, [0:7], $gpio_list -camInputsDebug3 = bits, U16, 1428, [0:7], $gpio_list -camInputsDebug4 = bits, U16, 1430, [0:7], $gpio_list -acIdleRpmTarget = scalar, S16, 1432, "RPM", 1, 0, 0, 2000, 0 -warningPeriod = scalar, S16, 1434, "seconds", 1, 0, 0, 60, 0 -knockDetectionWindowStart = scalar, F32, 1436, "angle", 1, 0, -1000, 1000, 2 -knockDetectionWindowEnd = scalar, F32, 1440, "angle", 1, 0, -1000, 1000, 2 -idleStepperReactionTime = scalar, F32, 1444, "ms", 1, 0, 1, 300, 0 -idleStepperTotalSteps = scalar, S32, 1448, "count", 1, 0, 5, 3000, 0 -noAccelAfterHardLimitPeriodSecs = scalar, F32, 1452, "sec", 1, 0, 0, 60, 0 -mapAveragingSchedulingAtIndex = scalar, S32, 1456, "index", 1, 0, 0, 7000, 0 -tachPulseDuractionMs = scalar, F32, 1460, "", 1, 0, 0, 100, 2 -wwaeTau = scalar, F32, 1464, "Seconds", 1, 0, 0, 3, 2 -alternatorControl_pFactor = scalar, F32, 1468, "", 1, 0, -10000, 10000, 4 -alternatorControl_iFactor = scalar, F32, 1472, "", 1, 0, -10000, 10000, 4 -alternatorControl_dFactor = scalar, F32, 1476, "", 1, 0, -10000, 10000, 4 -alternatorControl_offset = scalar, S16, 1480, "", 1, 0, -1000, 1000, 0 -alternatorControl_periodMs = scalar, S16, 1482, "ms", 1, 0, 0, 3000, 0 -alternatorControl_minValue = scalar, S16, 1484, "", 1, 0, -30000, 30000, 0 -alternatorControl_maxValue = scalar, S16, 1486, "", 1, 0, -30000, 30000, 0 -etb_pFactor = scalar, F32, 1488, "", 1, 0, -10000, 10000, 4 -etb_iFactor = scalar, F32, 1492, "", 1, 0, -10000, 10000, 4 -etb_dFactor = scalar, F32, 1496, "", 1, 0, -10000, 10000, 4 -etb_offset = scalar, S16, 1500, "", 1, 0, -1000, 1000, 0 -etb_periodMs = scalar, S16, 1502, "ms", 1, 0, 0, 3000, 0 -etb_minValue = scalar, S16, 1504, "", 1, 0, -30000, 30000, 0 -etb_maxValue = scalar, S16, 1506, "", 1, 0, -30000, 30000, 0 -triggerInputDebugPins1 = bits, U16, 1508, [0:7], $gpio_list -triggerInputDebugPins2 = bits, U16, 1510, [0:7], $gpio_list -airTaperRpmRange = scalar, S16, 1512, "RPM", 1, 0, 0, 1500, 0 -turboSpeedSensorInputPin = bits, U16, 1514, [0:7], $brain_input_pin_e_list -tps2Min = scalar, S16, 1516, "ADC", 1, 0, 0, 1023, 0 -tps2Max = scalar, S16, 1518, "ADC", 1, 0, 0, 1023, 0 -starterControlPin = bits, U16, 1520, [0:8], $output_pin_e_list -startStopButtonMode = bits, U08, 1522, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -mc33816_flag0 = bits, U16, 1524, [0:7], $gpio_list -tachPulsePerRev = scalar, U08, 1526, "Pulse", 1, 0, 1, 255, 0 -mapErrorDetectionTooLow = scalar, F32, 1528, "kPa", 1, 0, -100, 100, 2 -mapErrorDetectionTooHigh = scalar, F32, 1532, "kPa", 1, 0, -100, 800, 2 -multisparkSparkDuration = scalar, U16, 1536, "ms", 0.001, 0, 0, 3, 2 -multisparkDwell = scalar, U16, 1538, "ms", 0.001, 0, 0, 3, 2 -idleRpmPid_pFactor = scalar, F32, 1540, "", 1, 0, -10000, 10000, 4 -idleRpmPid_iFactor = scalar, F32, 1544, "", 1, 0, -10000, 10000, 4 -idleRpmPid_dFactor = scalar, F32, 1548, "", 1, 0, -10000, 10000, 4 -idleRpmPid_offset = scalar, S16, 1552, "", 1, 0, -1000, 1000, 0 -idleRpmPid_periodMs = scalar, S16, 1554, "ms", 1, 0, 0, 3000, 0 -idleRpmPid_minValue = scalar, S16, 1556, "", 1, 0, -30000, 30000, 0 -idleRpmPid_maxValue = scalar, S16, 1558, "", 1, 0, -30000, 30000, 0 -wwaeBeta = scalar, F32, 1560, "Fraction", 1, 0, 0, 1, 2 -binarySerialTxPin = bits, U16, 1564, [0:7], $gpio_list -binarySerialRxPin = bits, U16, 1566, [0:7], $gpio_list -auxValves1 = bits, U16, 1568, [0:7], $gpio_list -auxValves2 = bits, U16, 1570, [0:7], $gpio_list -tcuUpshiftButtonPin = bits, U16, 1572, [0:7], $switch_input_pin_e_list -tcuDownshiftButtonPin = bits, U16, 1574, [0:7], $switch_input_pin_e_list -throttlePedalUpVoltage = scalar, F32, 1576, "voltage", 1, 0, -6, 6, 2 -throttlePedalWOTVoltage = scalar, F32, 1580, "voltage", 1, 0, -6, 6, 2 -startUpFuelPumpDuration = scalar, S16, 1584, "seconds", 1, 0, 0, 6000, 0 -idlePidRpmDeadZone = scalar, S16, 1586, "RPM", 1, 0, 0, 800, 0 -targetVBatt = scalar, F32, 1588, "Volts", 1, 0, 0, 30, 1 -mc33810DisableRecoveryMode = bits, U32, 1592, [0:0], "false", "true" -mc33810Gpgd0Mode = bits, U32, 1592, [1:1], "false", "true" -mc33810Gpgd1Mode = bits, U32, 1592, [2:2], "false", "true" -mc33810Gpgd2Mode = bits, U32, 1592, [3:3], "false", "true" -mc33810Gpgd3Mode = bits, U32, 1592, [4:4], "false", "true" -enableExtendedCanBroadcast = bits, U32, 1592, [5:5], "false", "true" -luaCanRxWorkaround = bits, U32, 1592, [6:6], "false", "true" -flexSensorInverted = bits, U32, 1592, [7:7], "false", "true" -useHardSkipInTraction = bits, U32, 1592, [8:8], "false", "true" -fancySmartS = bits, U32, 1592, [9:9], "false", "true" -fancySmartL = bits, U32, 1592, [10:10], "false", "true" -useAuxSpeedForSlipRatio = bits, U32, 1592, [11:11], "false", "true" -useVssAsSecondWheelSpeed = bits, U32, 1592, [12:12], "false", "true" -is_enabled_spi_5 = bits, U32, 1592, [13:13], "false", "true" -is_enabled_spi_6 = bits, U32, 1592, [14:14], "false", "true" -enableAemXSeriesEgt = bits, U32, 1592, [15:15], "false", "true" -afterCrankingIACtaperDuration = scalar, S16, 1596, "cycles", 1, 0, 0, 5000, 0 -iacByTpsTaper = scalar, S16, 1598, "percent", 1, 0, 0, 500, 0 -auxSerialTxPin = bits, U16, 1600, [0:7], $gpio_list -auxSerialRxPin = bits, U16, 1602, [0:7], $gpio_list -accelerometerCsPin = bits, U16, 1604, [0:7], $gpio_list -tpsAccelLookback = scalar, U08, 1606, "sec", 0.05, 0, 0, 5, 2 -coastingFuelCutVssLow = scalar, U08, 1607, "kph", 1, 0, 0, 255, 0 -coastingFuelCutVssHigh = scalar, U08, 1608, "kph", 1, 0, 0, 255, 0 -noFuelTrimAfterDfcoTime = scalar, U08, 1609, "sec", 0.1, 0, 0, 10, 1 -tpsAccelEnrichmentThreshold = scalar, F32, 1612, "roc", 1, 0, 0, 200, 1 -auxSpeedSensorInputPin1 = bits, U16, 1616, [0:7], $brain_input_pin_e_list -auxSpeedSensorInputPin2 = bits, U16, 1618, [0:7], $brain_input_pin_e_list -totalGearsCount = scalar, U08, 1620, "", 1, 0, 1, 10, 0 -injectionTimingMode = bits, U08, 1621, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" -debugMode = bits, U08, 1622, [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, 1623, "%", 1, 0, 0, 100, 0 -uartConsoleSerialSpeed = scalar, U32, 1624, "BPs", 1, 0, 0, 1000000, 0 -tpsDecelEnleanmentThreshold = scalar, F32, 1628, "roc", 1, 0, 0, 200, 1 -tpsDecelEnleanmentMultiplier = scalar, F32, 1632, "coeff", 1, 0, 0, 200, 2 -auxSerialSpeed = scalar, U32, 1636, "BPs", 1, 0, 0, 1000000, 0 -throttlePedalSecondaryUpVoltage = scalar, F32, 1640, "voltage", 1, 0, -6, 6, 2 -throttlePedalSecondaryWOTVoltage = scalar, F32, 1644, "voltage", 1, 0, -6, 6, 2 -canBaudRate = bits, U08, 1648, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" -veOverrideMode = bits, U08, 1649, [0:1], "None", "MAP", "TPS", "INVALID" -can2BaudRate = bits, U08, 1650, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" -afrOverrideMode = bits, U08, 1651, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" -mc33_hpfp_i_peak = scalar, U08, 1652, "A", 0.1, 0, 0, 25, 1 -mc33_hpfp_i_hold = scalar, U08, 1653, "A", 0.1, 0, 0, 25, 1 -mc33_hpfp_i_hold_off = scalar, U08, 1654, "us", 1, 0, 0, 255, 0 -mc33_hpfp_max_hold = scalar, U08, 1655, "ms", 1, 0, 0, 255, 0 -stepperDcInvertedPins = bits, U32, 1656, [0:0], "false", "true" -canOpenBLT = bits, U32, 1656, [1:1], "false", "true" -can2OpenBLT = bits, U32, 1656, [2:2], "false", "true" -injectorFlowAsMassFlow = bits, U32, 1656, [3:3], "volumetric flow", "mass flow" -boardUseCanTerminator = bits, U32, 1656, [4:4], "false", "true" -kLineDoHondaSend = bits, U32, 1656, [5:5], "false", "true" -can1ListenMode = bits, U32, 1656, [6:6], "false", "true" -can2ListenMode = bits, U32, 1656, [7:7], "false", "true" -camDecoder2jzPosition = scalar, U08, 1660, "", 1, 0, 0, 100, 0 -mc33810maxDwellTimer = bits, U08, 1661, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" -benchTestOnTime = scalar, U16, 1662, "ms", 0.01, 0, 0, 500, 2 -lambdaProtectionRestoreTps = scalar, U08, 1664, "%", 1, 0, 0, 100, 0 -lambdaProtectionRestoreLoad = scalar, U08, 1665, "%", 10.0, 0, 0, 1000, 0 -launchActivatePinMode = bits, U08, 1666, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -can2TxPin = bits, U16, 1668, [0:7], $gpio_list -can2RxPin = bits, U16, 1670, [0:7], $gpio_list -starterControlPinMode = bits, U08, 1672, [0:1], "default", "default inverted", "open collector", "open collector inverted" -wastegatePositionSensor = bits, U08, 1673, [0:5], $adc_channel_e_list -ignOverrideMode = bits, U08, 1674, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" -injectorPressureType = bits, U08, 1675, [0:0], "Low", "High" -hpfpValvePin = bits, U16, 1676, [0:8], $output_pin_e_list -hpfpValvePinMode = bits, U08, 1678, [0:1], "default", "default inverted", "open collector", "open collector inverted" -boostCutPressure = scalar, F32, 1680, "kPa (absolute)", 1, 0, 0, 1000, 0 -tchargeBins = array, U08, 1684, [16], "kg/h", 5.0, 0, 0, 1200, 0 -tchargeValues = array, U08, 1700, [16], "ratio", 0.01, 0, 0, 1, 2 -fixedTiming = scalar, F32, 1716, "deg", 1, 0, -720, 720, 2 -mapLowValueVoltage = scalar, F32, 1720, "v", 1, 0, 0, 10, 2 -mapHighValueVoltage = scalar, F32, 1724, "v", 1, 0, 0, 10, 2 -egoValueShift = scalar, F32, 1728, "value", 1, 0, -10, 10, 2 -vvtPins1 = bits, U16, 1732, [0:8], $output_pin_e_list -vvtPins2 = bits, U16, 1734, [0:8], $output_pin_e_list -vvtPins3 = bits, U16, 1736, [0:8], $output_pin_e_list -vvtPins4 = bits, U16, 1738, [0:8], $output_pin_e_list -sdCardCsPinMode = bits, U08, 1740, [0:1], "default", "default inverted", "open collector", "open collector inverted" -crankingIACposition = scalar, S32, 1744, "percent", 1, 0, -100, 100, 0 -tChargeMinRpmMinTps = scalar, F32, 1748, "", 1, 0, 0, 3, 4 -tChargeMinRpmMaxTps = scalar, F32, 1752, "", 1, 0, 0, 3, 4 -tChargeMaxRpmMinTps = scalar, F32, 1756, "", 1, 0, 0, 3, 4 -tChargeMaxRpmMaxTps = scalar, F32, 1760, "", 1, 0, 0, 3, 4 -vvtOutputFrequency = scalar, U16, 1764, "Hz", 1, 0, 0, 3000, 0 -minimumIgnitionTiming = scalar, S08, 1766, "deg BTDC", 1, 0, -90, 90, 0 -maximumIgnitionTiming = scalar, S08, 1767, "deg BTDC", 1, 0, -90, 90, 0 -alternatorPwmFrequency = scalar, S32, 1768, "Hz", 1, 0, 0, 3000, 0 -vvtMode1 = bits, U08, 1772, [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, 1773, [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, 1774, "%", 1, 0, 0, 100, 0 -primingDelay = scalar, U08, 1775, "sec", 0.01, 0, 0, 1, 2 -auxAnalogInputs1 = bits, U08, 1776, [0:5], $adc_channel_e_list -auxAnalogInputs2 = bits, U08, 1777, [0:5], $adc_channel_e_list -auxAnalogInputs3 = bits, U08, 1778, [0:5], $adc_channel_e_list -auxAnalogInputs4 = bits, U08, 1779, [0:5], $adc_channel_e_list -auxAnalogInputs5 = bits, U08, 1780, [0:5], $adc_channel_e_list -auxAnalogInputs6 = bits, U08, 1781, [0:5], $adc_channel_e_list -auxAnalogInputs7 = bits, U08, 1782, [0:5], $adc_channel_e_list -auxAnalogInputs8 = bits, U08, 1783, [0:5], $adc_channel_e_list -trailingCoilPins1 = bits, U16, 1784, [0:8], $output_pin_e_list -trailingCoilPins2 = bits, U16, 1786, [0:8], $output_pin_e_list -trailingCoilPins3 = bits, U16, 1788, [0:8], $output_pin_e_list -trailingCoilPins4 = bits, U16, 1790, [0:8], $output_pin_e_list -trailingCoilPins5 = bits, U16, 1792, [0:8], $output_pin_e_list -trailingCoilPins6 = bits, U16, 1794, [0:8], $output_pin_e_list -trailingCoilPins7 = bits, U16, 1796, [0:8], $output_pin_e_list -trailingCoilPins8 = bits, U16, 1798, [0:8], $output_pin_e_list -trailingCoilPins9 = bits, U16, 1800, [0:8], $output_pin_e_list -trailingCoilPins10 = bits, U16, 1802, [0:8], $output_pin_e_list -trailingCoilPins11 = bits, U16, 1804, [0:8], $output_pin_e_list -trailingCoilPins12 = bits, U16, 1806, [0:8], $output_pin_e_list -tle8888mode = bits, U08, 1808, [0:1], "Auto", "SemiAuto", "Manual", "Hall" -accelerometerCsPinMode = bits, U08, 1809, [0:1], "default", "default inverted", "open collector", "open collector inverted" -injectorCompensationMode = bits, U08, 1810, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" -fan2PinMode = bits, U08, 1811, [0:1], "default", "default inverted", "open collector", "open collector inverted" -fuelReferencePressure = scalar, F32, 1812, "kPa", 1, 0, 50, 700000, 0 -postCrankingFactor = array, F32, 1816, [6x6], "mult", 1, 0, 1, 3, 2 -postCrankingDurationBins = array, F32, 1960, [6], "count", 1, 0, 0, 1000, 0 -postCrankingCLTBins = array, F32, 1984, [6], "C", 1, 0, -100, 100, 0 -auxTempSensor1_tempC_1 = scalar, F32, 2008, "*C", 1, 0, -55, 200, 1 -auxTempSensor1_tempC_2 = scalar, F32, 2012, "*C", 1, 0, -55, 200, 1 -auxTempSensor1_tempC_3 = scalar, F32, 2016, "*C", 1, 0, -55, 200, 1 -auxTempSensor1_resistance_1 = scalar, F32, 2020, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor1_resistance_2 = scalar, F32, 2024, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor1_resistance_3 = scalar, F32, 2028, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor1_bias_resistor = scalar, F32, 2032, "Ohm", 1, 0, 0, 200000, 1 -auxTempSensor1_adcChannel = bits, U08, 2036, [0:5], $adc_channel_e_list -auxTempSensor2_tempC_1 = scalar, F32, 2040, "*C", 1, 0, -55, 200, 1 -auxTempSensor2_tempC_2 = scalar, F32, 2044, "*C", 1, 0, -55, 200, 1 -auxTempSensor2_tempC_3 = scalar, F32, 2048, "*C", 1, 0, -55, 200, 1 -auxTempSensor2_resistance_1 = scalar, F32, 2052, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor2_resistance_2 = scalar, F32, 2056, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor2_resistance_3 = scalar, F32, 2060, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor2_bias_resistor = scalar, F32, 2064, "Ohm", 1, 0, 0, 200000, 1 -auxTempSensor2_adcChannel = bits, U08, 2068, [0:5], $adc_channel_e_list -knockSamplingDuration = scalar, S16, 2072, "Deg", 1, 0, 0, 720, 0 -etbFreq = scalar, S16, 2074, "Hz", 1, 0, 0, 3000, 0 -etbWastegatePid_pFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 -etbWastegatePid_iFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 -etbWastegatePid_dFactor = scalar, F32, 2084, "", 1, 0, -10000, 10000, 4 -etbWastegatePid_offset = scalar, S16, 2088, "", 1, 0, -1000, 1000, 0 -etbWastegatePid_periodMs = scalar, S16, 2090, "ms", 1, 0, 0, 3000, 0 -etbWastegatePid_minValue = scalar, S16, 2092, "", 1, 0, -30000, 30000, 0 -etbWastegatePid_maxValue = scalar, S16, 2094, "", 1, 0, -30000, 30000, 0 -stepperNumMicroSteps = bits, U08, 2096, [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, 2097, "%", 1, 0, 0, 100, 0 -stepperMaxDutyCycle = scalar, U08, 2098, "%", 1, 0, 0, 100, 0 -sdCardSpiDevice = bits, U08, 2099, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -timing_offset_cylinder1 = scalar, F32, 2100, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder2 = scalar, F32, 2104, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder3 = scalar, F32, 2108, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder4 = scalar, F32, 2112, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder5 = scalar, F32, 2116, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder6 = scalar, F32, 2120, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder7 = scalar, F32, 2124, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder8 = scalar, F32, 2128, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder9 = scalar, F32, 2132, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder10 = scalar, F32, 2136, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder11 = scalar, F32, 2140, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder12 = scalar, F32, 2144, "deg", 1, 0, -720, 720, 1 -idlePidActivationTime = scalar, F32, 2148, "seconds", 1, 0, 0, 60, 1 -spi1SckMode = bits, U08, 2152, [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, 2153, [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, 2154, [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, 2155, [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, 2156, [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, 2157, [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, 2158, [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, 2159, [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, 2160, [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, 2161, [0:1], "default", "default inverted", "open collector", "open collector inverted" -mc33816_rstb = bits, U16, 2162, [0:7], $gpio_list -mc33816_driven = bits, U16, 2164, [0:7], $gpio_list -brakePedalPin = bits, U16, 2166, [0:7], $switch_input_pin_e_list -brakePedalPinMode = bits, U08, 2168, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -auxPid1_pFactor = scalar, F32, 2172, "", 1, 0, -10000, 10000, 4 -auxPid1_iFactor = scalar, F32, 2176, "", 1, 0, -10000, 10000, 4 -auxPid1_dFactor = scalar, F32, 2180, "", 1, 0, -10000, 10000, 4 -auxPid1_offset = scalar, S16, 2184, "", 1, 0, -1000, 1000, 0 -auxPid1_periodMs = scalar, S16, 2186, "ms", 1, 0, 0, 3000, 0 -auxPid1_minValue = scalar, S16, 2188, "", 1, 0, -30000, 30000, 0 -auxPid1_maxValue = scalar, S16, 2190, "", 1, 0, -30000, 30000, 0 -auxPid2_pFactor = scalar, F32, 2192, "", 1, 0, -10000, 10000, 4 -auxPid2_iFactor = scalar, F32, 2196, "", 1, 0, -10000, 10000, 4 -auxPid2_dFactor = scalar, F32, 2200, "", 1, 0, -10000, 10000, 4 -auxPid2_offset = scalar, S16, 2204, "", 1, 0, -1000, 1000, 0 -auxPid2_periodMs = scalar, S16, 2206, "ms", 1, 0, 0, 3000, 0 -auxPid2_minValue = scalar, S16, 2208, "", 1, 0, -30000, 30000, 0 -auxPid2_maxValue = scalar, S16, 2210, "", 1, 0, -30000, 30000, 0 -injectorCorrectionPolynomial1 = scalar, F32, 2212, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial2 = scalar, F32, 2216, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial3 = scalar, F32, 2220, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial4 = scalar, F32, 2224, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial5 = scalar, F32, 2228, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial6 = scalar, F32, 2232, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial7 = scalar, F32, 2236, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial8 = scalar, F32, 2240, "", 1, 0, -1000, 1000, 4 -primeBins = array, S08, 2244, [8], "C", 1, 0, -40, 120, 0 -oilPressure_hwChannel = bits, U08, 2252, [0:5], $adc_channel_e_list -oilPressure_v1 = scalar, F32, 2256, "volts", 1, 0, 0, 10, 2 -oilPressure_value1 = scalar, F32, 2260, "", 1, 0, 0, 1000000, 2 -oilPressure_v2 = scalar, F32, 2264, "volts", 1, 0, 0, 10, 2 -oilPressure_value2 = scalar, F32, 2268, "", 1, 0, 0, 1000000, 2 -accelerometerSpiDevice = bits, U08, 2272, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -fan2Pin = bits, U16, 2274, [0:8], $output_pin_e_list -fan2OnTemperature = scalar, U08, 2276, "deg C", 1, 0, 0, 150, 0 -fan2OffTemperature = scalar, U08, 2277, "deg C", 1, 0, 0, 150, 0 -stepperEnablePin = bits, U16, 2278, [0:7], $gpio_list -tle8888_cs = bits, U16, 2280, [0:7], $gpio_list -tle8888_csPinMode = bits, U08, 2282, [0:1], "default", "default inverted", "open collector", "open collector inverted" -mc33816_cs = bits, U16, 2284, [0:7], $gpio_list -auxFrequencyFilter = scalar, F32, 2288, "hz", 1, 0, 0, 100, 1 -vvtControlMinRpm = scalar, S16, 2292, "RPM", 1, 0, 0, 3000, 0 -sentInputPins1 = bits, U16, 2294, [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, 2296, "%", 1, 0, 0, 100, 0 -etbJamTimeout = scalar, U08, 2297, "sec", 0.02, 0, 0, 5, 2 -etbExpAverageLength = scalar, U16, 2298, "", 1, 0, 0, 32000, 0 -unused645646 = scalar, F32, 2300, "", 1, 0, 0, 100, 0 -coastingFuelCutRpmHigh = scalar, S16, 2304, "rpm", 1, 0, 0, 5000, 0 -coastingFuelCutRpmLow = scalar, S16, 2306, "rpm", 1, 0, 0, 5000, 0 -coastingFuelCutTps = scalar, S16, 2308, "%", 1, 0, 0, 20, 0 -coastingFuelCutClt = scalar, S16, 2310, "C", 1, 0, -100, 100, 0 -pidExtraForLowRpm = scalar, S16, 2312, "%", 1, 0, 0, 100, 0 -coastingFuelCutMap = scalar, S16, 2314, "kPa", 1, 0, 0, 250, 0 -highPressureFuel_hwChannel = bits, U08, 2316, [0:5], $adc_channel_e_list -highPressureFuel_v1 = scalar, F32, 2320, "volts", 1, 0, 0, 10, 2 -highPressureFuel_value1 = scalar, F32, 2324, "", 1, 0, 0, 1000000, 2 -highPressureFuel_v2 = scalar, F32, 2328, "volts", 1, 0, 0, 10, 2 -highPressureFuel_value2 = scalar, F32, 2332, "", 1, 0, 0, 1000000, 2 -lowPressureFuel_hwChannel = bits, U08, 2336, [0:5], $adc_channel_e_list -lowPressureFuel_v1 = scalar, F32, 2340, "volts", 1, 0, 0, 10, 2 -lowPressureFuel_value1 = scalar, F32, 2344, "", 1, 0, 0, 1000000, 2 -lowPressureFuel_v2 = scalar, F32, 2348, "volts", 1, 0, 0, 10, 2 -lowPressureFuel_value2 = scalar, F32, 2352, "", 1, 0, 0, 1000000, 2 -cltRevLimitRpmBins = array, S08, 2356, [4], "C", 1, 0, -40, 120, 0 -cltRevLimitRpm = array, U16, 2360, [4], "RPM", 1, 0, 0, 20000, 0 -scriptCurveName1 = string, ASCII, 2368, 16 -scriptCurveName2 = string, ASCII, 2384, 16 -scriptCurveName3 = string, ASCII, 2400, 16 -scriptCurveName4 = string, ASCII, 2416, 16 -scriptCurveName5 = string, ASCII, 2432, 16 -scriptCurveName6 = string, ASCII, 2448, 16 -scriptTableName1 = string, ASCII, 2464, 16 -scriptTableName2 = string, ASCII, 2480, 16 -scriptTableName3 = string, ASCII, 2496, 16 -scriptTableName4 = string, ASCII, 2512, 16 -scriptSettingName1 = string, ASCII, 2528, 16 -scriptSettingName2 = string, ASCII, 2544, 16 -scriptSettingName3 = string, ASCII, 2560, 16 -scriptSettingName4 = string, ASCII, 2576, 16 -scriptSettingName5 = string, ASCII, 2592, 16 -scriptSettingName6 = string, ASCII, 2608, 16 -scriptSettingName7 = string, ASCII, 2624, 16 -scriptSettingName8 = string, ASCII, 2640, 16 -tChargeAirCoefMin = scalar, F32, 2656, "", 1, 0, 0, 1, 3 -tChargeAirCoefMax = scalar, F32, 2660, "", 1, 0, 0, 1, 3 -tChargeAirFlowMax = scalar, F32, 2664, "kg/h", 1, 0, 0, 1000, 1 -tChargeAirIncrLimit = scalar, F32, 2668, "deg/sec", 1, 0, 0, 100, 1 -tChargeAirDecrLimit = scalar, F32, 2672, "deg/sec", 1, 0, 0, 100, 1 -tChargeMode = bits, U08, 2676, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" -hip9011Gain = scalar, F32, 2680, "", 1, 0, 0, 100, 2 -etb_iTermMin = scalar, S16, 2684, "", 1, 0, -30000, 30000, 0 -etb_iTermMax = scalar, S16, 2686, "", 1, 0, -30000, 30000, 0 -idleTimingPid_pFactor = scalar, F32, 2688, "", 1, 0, -10000, 10000, 4 -idleTimingPid_iFactor = scalar, F32, 2692, "", 1, 0, -10000, 10000, 4 -idleTimingPid_dFactor = scalar, F32, 2696, "", 1, 0, -10000, 10000, 4 -idleTimingPid_offset = scalar, S16, 2700, "", 1, 0, -1000, 1000, 0 -idleTimingPid_periodMs = scalar, S16, 2702, "ms", 1, 0, 0, 3000, 0 -idleTimingPid_minValue = scalar, S16, 2704, "", 1, 0, -30000, 30000, 0 -idleTimingPid_maxValue = scalar, S16, 2706, "", 1, 0, -30000, 30000, 0 -idleTimingSoftEntryTime = scalar, F32, 2708, "", 1, 0, 0, 100, 1 -etbRocExpAverageLength = scalar, S16, 2712, "", 1, 0, 0, 32000, 0 -tpsAccelFractionPeriod = scalar, S16, 2714, "cycles", 1, 0, 0, 500, 0 -tpsAccelFractionDivisor = scalar, F32, 2716, "coef", 1, 0, 1, 100, 2 -tle8888spiDevice = bits, U08, 2720, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -mc33816spiDevice = bits, U08, 2721, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -idlerpmpid_iTermMin = scalar, S16, 2722, "", 1, 0, -30000, 30000, 0 -tle6240spiDevice = bits, U08, 2724, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -stoichRatioPrimary = scalar, U08, 2725, ":1", 0.1, 0, 5, 25, 1 -idlerpmpid_iTermMax = scalar, S16, 2726, "", 1, 0, -30000, 30000, 0 -etbIdleThrottleRange = scalar, F32, 2728, "%", 1, 0, 0, 15, 0 -cylinderBankSelect1 = scalar, U08, 2732, "", 1, 1, 1, 2, 0 -cylinderBankSelect2 = scalar, U08, 2733, "", 1, 1, 1, 2, 0 -cylinderBankSelect3 = scalar, U08, 2734, "", 1, 1, 1, 2, 0 -cylinderBankSelect4 = scalar, U08, 2735, "", 1, 1, 1, 2, 0 -cylinderBankSelect5 = scalar, U08, 2736, "", 1, 1, 1, 2, 0 -cylinderBankSelect6 = scalar, U08, 2737, "", 1, 1, 1, 2, 0 -cylinderBankSelect7 = scalar, U08, 2738, "", 1, 1, 1, 2, 0 -cylinderBankSelect8 = scalar, U08, 2739, "", 1, 1, 1, 2, 0 -cylinderBankSelect9 = scalar, U08, 2740, "", 1, 1, 1, 2, 0 -cylinderBankSelect10 = scalar, U08, 2741, "", 1, 1, 1, 2, 0 -cylinderBankSelect11 = scalar, U08, 2742, "", 1, 1, 1, 2, 0 -cylinderBankSelect12 = scalar, U08, 2743, "", 1, 1, 1, 2, 0 -primeValues = array, U08, 2744, [8], "mg", 5.0, 0, 0, 1250, 0 -triggerCompCenterVolt = scalar, U08, 2752, "V", 0.02, 0, 0, 5.1, 2 -triggerCompHystMin = scalar, U08, 2753, "V", 0.02, 0, 0, 5.1, 2 -triggerCompHystMax = scalar, U08, 2754, "V", 0.02, 0, 0, 5.1, 2 -triggerCompSensorSatRpm = scalar, U08, 2755, "RPM", 50.0, 0, 0, 12000, 0 -tractionControlSlipBins = array, U16, 2756, [6], "ratio", 0.01, 0, 0, 999, 2 -tractionControlSpeedBins = array, U08, 2768, [6], "RPM", 1, 0, 0, 250, 0 -disableFan1AtSpeed = scalar, S08, 2774, "", 1, 0, 0, 100, 0 -disableFan2AtSpeed = scalar, S08, 2775, "", 1, 0, 0, 100, 0 -canVssNbcType = bits, U08, 2776, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" -gppwm1_pin = bits, U16, 2780, [0:8], $output_pin_e_list -gppwm1_dutyIfError = scalar, U08, 2782, "%", 1, 0, 0, 100, 0 -gppwm1_pwmFrequency = scalar, U16, 2784, "hz", 1, 0, 0, 500, 0 -gppwm1_onAboveDuty = scalar, U08, 2786, "%", 1, 0, 0, 100, 0 -gppwm1_offBelowDuty = scalar, U08, 2787, "%", 1, 0, 0, 100, 0 -gppwm1_loadAxis = bits, U08, 2788, [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, 2789, [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, 2790, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm1_rpmBins = array, S16, 2806, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm1_table = array, U08, 2822, [8x8], "duty", 0.5, 0, 0, 100, 1 -gppwm2_pin = bits, U16, 2888, [0:8], $output_pin_e_list -gppwm2_dutyIfError = scalar, U08, 2890, "%", 1, 0, 0, 100, 0 -gppwm2_pwmFrequency = scalar, U16, 2892, "hz", 1, 0, 0, 500, 0 -gppwm2_onAboveDuty = scalar, U08, 2894, "%", 1, 0, 0, 100, 0 -gppwm2_offBelowDuty = scalar, U08, 2895, "%", 1, 0, 0, 100, 0 -gppwm2_loadAxis = bits, U08, 2896, [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, 2897, [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, 2898, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm2_rpmBins = array, S16, 2914, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm2_table = array, U08, 2930, [8x8], "duty", 0.5, 0, 0, 100, 1 -gppwm3_pin = bits, U16, 2996, [0:8], $output_pin_e_list -gppwm3_dutyIfError = scalar, U08, 2998, "%", 1, 0, 0, 100, 0 -gppwm3_pwmFrequency = scalar, U16, 3000, "hz", 1, 0, 0, 500, 0 -gppwm3_onAboveDuty = scalar, U08, 3002, "%", 1, 0, 0, 100, 0 -gppwm3_offBelowDuty = scalar, U08, 3003, "%", 1, 0, 0, 100, 0 -gppwm3_loadAxis = bits, U08, 3004, [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, 3005, [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, 3006, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm3_rpmBins = array, S16, 3022, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm3_table = array, U08, 3038, [8x8], "duty", 0.5, 0, 0, 100, 1 -gppwm4_pin = bits, U16, 3104, [0:8], $output_pin_e_list -gppwm4_dutyIfError = scalar, U08, 3106, "%", 1, 0, 0, 100, 0 -gppwm4_pwmFrequency = scalar, U16, 3108, "hz", 1, 0, 0, 500, 0 -gppwm4_onAboveDuty = scalar, U08, 3110, "%", 1, 0, 0, 100, 0 -gppwm4_offBelowDuty = scalar, U08, 3111, "%", 1, 0, 0, 100, 0 -gppwm4_loadAxis = bits, U08, 3112, [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, 3113, [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, 3114, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm4_rpmBins = array, S16, 3130, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm4_table = array, U08, 3146, [8x8], "duty", 0.5, 0, 0, 100, 1 -mc33_i_boost = scalar, U16, 3212, "mA", 1, 0, 1000, 25000, 0 -mc33_i_peak = scalar, U16, 3214, "mA", 1, 0, 1000, 20000, 0 -mc33_i_hold = scalar, U16, 3216, "mA", 1, 0, 1000, 20000, 0 -mc33_t_max_boost = scalar, U16, 3218, "us", 1, 0, 0, 10000, 0 -mc33_t_peak_off = scalar, U16, 3220, "us", 1, 0, 0, 10000, 0 -mc33_t_peak_tot = scalar, U16, 3222, "us", 1, 0, 0, 10000, 0 -mc33_t_bypass = scalar, U16, 3224, "us", 1, 0, 0, 10000, 0 -mc33_t_hold_off = scalar, U16, 3226, "us", 1, 0, 0, 10000, 0 -mc33_t_hold_tot = scalar, U16, 3228, "us", 1, 0, 0, 10000, 0 -tcuUpshiftButtonPinMode = bits, U08, 3230, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcuDownshiftButtonPinMode = bits, U08, 3231, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -acSwitchMode = bits, U08, 3232, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_solenoid_mode1 = bits, U08, 3233, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode2 = bits, U08, 3234, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode3 = bits, U08, 3235, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode4 = bits, U08, 3236, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode5 = bits, U08, 3237, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode6 = bits, U08, 3238, [0:1], "default", "default inverted", "open collector", "open collector inverted" -knockBaseNoise = array, S08, 3239, [16], "dB", 0.5, 0, -50, 10, 1 -triggerGapOverrideFrom1 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom2 = scalar, F32, 3260, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom3 = scalar, F32, 3264, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom4 = scalar, F32, 3268, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom5 = scalar, F32, 3272, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom6 = scalar, F32, 3276, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom7 = scalar, F32, 3280, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom8 = scalar, F32, 3284, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom9 = scalar, F32, 3288, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom10 = scalar, F32, 3292, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom11 = scalar, F32, 3296, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom12 = scalar, F32, 3300, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom13 = scalar, F32, 3304, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom14 = scalar, F32, 3308, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom15 = scalar, F32, 3312, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom16 = scalar, F32, 3316, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom17 = scalar, F32, 3320, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom18 = scalar, F32, 3324, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo1 = scalar, F32, 3328, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo2 = scalar, F32, 3332, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo3 = scalar, F32, 3336, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo4 = scalar, F32, 3340, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo5 = scalar, F32, 3344, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo6 = scalar, F32, 3348, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo7 = scalar, F32, 3352, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo8 = scalar, F32, 3356, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo9 = scalar, F32, 3360, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo10 = scalar, F32, 3364, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo11 = scalar, F32, 3368, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo12 = scalar, F32, 3372, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo13 = scalar, F32, 3376, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo14 = scalar, F32, 3380, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo15 = scalar, F32, 3384, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo16 = scalar, F32, 3388, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo17 = scalar, F32, 3392, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo18 = scalar, F32, 3396, "ratio", 1, 0, 0, 20, 3 -maxCamPhaseResolveRpm = scalar, U08, 3400, "rpm", 50.0, 0, 0, 12500, 0 -dfcoDelay = scalar, U08, 3401, "sec", 0.1, 0, 0, 10, 1 -acDelay = scalar, U08, 3402, "sec", 0.1, 0, 0, 10, 1 -fordInjectorSmallPulseBreakPoint = scalar, U16, 3404, "mg", 0.001, 0, 0, 65, 3 -tpsTspCorrValues = array, U08, 3406, [4], "multiplier", 0.02, 0, 0, 5, 2 -etbJamIntegratorLimit = scalar, U08, 3410, "%", 1, 0, 0, 50, 0 -hpfpCamLobes = scalar, U08, 3411, "lobes/cam", 1, 0, 0, 255, 0 -hpfpCam = bits, U08, 3412, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" -auxiliarySetting1 = scalar, U08, 3413, "", 1, 0, 0, 100, 0 -hpfpMinAngle = scalar, U08, 3414, "deg", 1, 0, 0, 255, 0 -hpfpPumpVolume = scalar, U16, 3416, "cc", 0.001, 0, 0, 65, 3 -hpfpActivationAngle = scalar, U08, 3418, "deg", 1, 0, 0, 255, 0 -issFilterReciprocal = scalar, U08, 3419, "", 1, 0, 0, 255, 0 -hpfpPidP = scalar, U16, 3420, "%/kPa", 0.001, 0, 0, 65, 3 -hpfpPidI = scalar, U16, 3422, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 -hpfpTargetDecay = scalar, U16, 3424, "kPa/s", 1, 0, 0, 65000, 0 -hpfpLobeProfileQuantityBins = array, U08, 3426, [16], "%", 0.5, 0, 0, 100, 1 -hpfpLobeProfileAngle = array, U08, 3442, [16], "deg", 0.5, 0, 0, 125, 1 -hpfpDeadtimeVoltsBins = array, U08, 3458, [8], "volts", 1, 0, 0, 255, 0 -hpfpDeadtimeMS = array, U16, 3466, [8], "ms", 0.001, 0, 0, 65, 3 -hpfpTarget = array, U16, 3482, [10x10], "kPa", 1, 0, 0, 65000, 0 -hpfpTargetLoadBins = array, U16, 3682, [10], "load", 0.1, 0, 0, 6500, 1 -hpfpTargetRpmBins = array, U08, 3702, [10], "RPM", 50.0, 0, 0, 12500, 0 -hpfpCompensation = array, S08, 3712, [10x10], "%", 1, 0, -100, 100, 0 -hpfpCompensationLoadBins = array, U16, 3812, [10], "cc/lobe", 0.001, 0, 0, 65, 3 -hpfpCompensationRpmBins = array, U08, 3832, [10], "RPM", 50.0, 0, 0, 12500, 0 -stepper_raw_output1 = bits, U16, 3842, [0:8], $output_pin_e_list -stepper_raw_output2 = bits, U16, 3844, [0:8], $output_pin_e_list -stepper_raw_output3 = bits, U16, 3846, [0:8], $output_pin_e_list -stepper_raw_output4 = bits, U16, 3848, [0:8], $output_pin_e_list -gearRatio1 = scalar, U16, 3850, "ratio", 0.01, 0, 0, 30, 2 -gearRatio2 = scalar, U16, 3852, "ratio", 0.01, 0, 0, 30, 2 -gearRatio3 = scalar, U16, 3854, "ratio", 0.01, 0, 0, 30, 2 -gearRatio4 = scalar, U16, 3856, "ratio", 0.01, 0, 0, 30, 2 -gearRatio5 = scalar, U16, 3858, "ratio", 0.01, 0, 0, 30, 2 -gearRatio6 = scalar, U16, 3860, "ratio", 0.01, 0, 0, 30, 2 -gearRatio7 = scalar, U16, 3862, "ratio", 0.01, 0, 0, 30, 2 -gearRatio8 = scalar, U16, 3864, "ratio", 0.01, 0, 0, 30, 2 -gearRatio9 = scalar, U16, 3866, "ratio", 0.01, 0, 0, 30, 2 -gearRatio10 = scalar, U16, 3868, "ratio", 0.01, 0, 0, 30, 2 -vvtActivationDelayMs = scalar, U16, 3870, "ms", 1, 0, 0, 65000, 0 -wwCltBins = array, S08, 3872, [8], "deg C", 1, 0, -40, 120, 0 -wwTauCltValues = array, U08, 3880, [8], "", 0.01, 0, 0, 2.5, 2 -wwBetaCltValues = array, U08, 3888, [8], "", 0.01, 0, 0, 1, 2 -wwMapBins = array, S08, 3896, [8], "kPa", 1, 0, 0, 250, 0 -wwTauMapValues = array, U08, 3904, [8], "", 0.01, 0, 0, 2.5, 2 -wwBetaMapValues = array, U08, 3912, [8], "", 0.01, 0, 0, 2.5, 2 -torqueTable = array, U08, 3920, [6x6], "Nm", 10.0, 0, 0, 255, 0 -torqueRpmBins = array, U16, 3956, [6], "RPM", 1, 0, 0, 65000, 0 -torqueLoadBins = array, U16, 3968, [6], "Load", 1, 0, 0, 65000, 0 -gearControllerMode = bits, U08, 3980, [0:1], "None", "Button Shift", "INVALID", "INVALID" -transmissionControllerMode = bits, U08, 3981, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" -acrDisablePhase = scalar, U16, 3982, "deg", 1, 0, 0, 720, 0 -auxLinear1_hwChannel = bits, U08, 3984, [0:5], $adc_channel_e_list -auxLinear1_v1 = scalar, F32, 3988, "volts", 1, 0, 0, 10, 2 -auxLinear1_value1 = scalar, F32, 3992, "", 1, 0, 0, 1000000, 2 -auxLinear1_v2 = scalar, F32, 3996, "volts", 1, 0, 0, 10, 2 -auxLinear1_value2 = scalar, F32, 4000, "", 1, 0, 0, 1000000, 2 -auxLinear2_hwChannel = bits, U08, 4004, [0:5], $adc_channel_e_list -auxLinear2_v1 = scalar, F32, 4008, "volts", 1, 0, 0, 10, 2 -auxLinear2_value1 = scalar, F32, 4012, "", 1, 0, 0, 1000000, 2 -auxLinear2_v2 = scalar, F32, 4016, "volts", 1, 0, 0, 10, 2 -auxLinear2_value2 = scalar, F32, 4020, "", 1, 0, 0, 1000000, 2 -tcu_tcc_onoff_solenoid = bits, U16, 4024, [0:8], $output_pin_e_list -tcu_tcc_onoff_solenoid_mode = bits, U08, 4026, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_tcc_pwm_solenoid = bits, U16, 4028, [0:8], $output_pin_e_list -tcu_tcc_pwm_solenoid_mode = bits, U08, 4030, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_tcc_pwm_solenoid_freq = scalar, U16, 4032, "Hz", 1, 0, 0, 3000, 0 -tcu_pc_solenoid_pin = bits, U16, 4034, [0:8], $output_pin_e_list -tcu_pc_solenoid_pin_mode = bits, U08, 4036, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_pc_solenoid_freq = scalar, U16, 4038, "Hz", 1, 0, 0, 3000, 0 -tcu_32_solenoid_pin = bits, U16, 4040, [0:8], $output_pin_e_list -tcu_32_solenoid_pin_mode = bits, U08, 4042, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_32_solenoid_freq = scalar, U16, 4044, "Hz", 1, 0, 0, 3000, 0 -acrPin2 = bits, U16, 4046, [0:8], $output_pin_e_list -etbMinimumPosition = scalar, F32, 4048, "%", 1, 0, 0.01, 100, 2 -tuneHidingKey = scalar, U16, 4052, "", 1, 0, 0, 20000, 0 -vinNumber = string, ASCII, 4054, 17 -highSpeedOffsets = array, U16, 4072, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave -unused3124141 = scalar, F32, 4136, "", 1, 0, 0, 100, 0 -fuelPressureSensorMode = bits, U08, 4140, [0:1], "Absolute", "Gauge", "Differential", "INVALID" -luaDigitalInputPins1 = bits, U16, 4142, [0:7], $switch_input_pin_e_list -luaDigitalInputPins2 = bits, U16, 4144, [0:7], $switch_input_pin_e_list -luaDigitalInputPins3 = bits, U16, 4146, [0:7], $switch_input_pin_e_list -luaDigitalInputPins4 = bits, U16, 4148, [0:7], $switch_input_pin_e_list -luaDigitalInputPins5 = bits, U16, 4150, [0:7], $switch_input_pin_e_list -luaDigitalInputPins6 = bits, U16, 4152, [0:7], $switch_input_pin_e_list -luaDigitalInputPins7 = bits, U16, 4154, [0:7], $switch_input_pin_e_list -luaDigitalInputPins8 = bits, U16, 4156, [0:7], $switch_input_pin_e_list -tpsTspCorrValuesBins = array, U08, 4158, [4], "RPM", 50.0, 0, 0, 17500, 0 -ALSMinRPM = scalar, S16, 4162, "rpm", 1, 0, 0, 20000, 0 -ALSMaxRPM = scalar, S16, 4164, "rpm", 1, 0, 0, 20000, 0 -ALSMaxDuration = scalar, S16, 4166, "sec", 1, 0, 0, 10, 0 -ALSMinCLT = scalar, S08, 4168, "C", 1, 0, 0, 90, 0 -ALSMaxCLT = scalar, S08, 4169, "C", 1, 0, 0, 105, 0 -alsMinTimeBetween = scalar, U08, 4170, "", 1, 0, 0, 20000, 0 -alsEtbPosition = scalar, U08, 4171, "", 1, 0, 0, 20000, 0 -acRelayAlternatorDutyAdder = scalar, U08, 4172, "%", 1, 0, 0, 100, 0 -sentEtbType = bits, S08, 4173, [0:1], "None", "GM type 1", "Ford type 1", "Custom" -customSentTpsMin = scalar, U16, 4174, "", 1, 0, 0, 32000, 0 -ALSIdleAdd = scalar, S32, 4176, "%", 1, 0, 0, 100, 2 -ALSEtbAdd = scalar, S32, 4180, "%", 1, 0, 0, 100, 2 -ALSSkipRatio = scalar, F32, 4184, "", 1, 0, 0, 1, 1 -ALSMaxDriverThrottleIntent = scalar, U08, 4188, "%", 1, 0, 0, 10, 0 -ALSActivatePinMode = bits, U08, 4189, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tpsSecondaryMaximum = scalar, U08, 4190, "%", 0.5, 0, 0, 100, 1 -ppsSecondaryMaximum = scalar, U08, 4191, "%", 0.5, 0, 0, 100, 1 -luaDigitalInputPinModes1 = bits, U08, 4192, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes2 = bits, U08, 4193, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes3 = bits, U08, 4194, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes4 = bits, U08, 4195, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes5 = bits, U08, 4196, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes6 = bits, U08, 4197, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes7 = bits, U08, 4198, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes8 = bits, U08, 4199, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -customSentTpsMax = scalar, U16, 4200, "", 1, 0, 0, 32000, 0 -kLineBaudRate = scalar, U16, 4202, "", 1, 0, 0, 32000, 0 -canGpioType = bits, S08, 4204, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" -uiMode = bits, S08, 4205, [0:1], "Full", "Installation", "Tuning", "INVALID" -hpfpPeakPos = scalar, S16, 4206, "deg", 1, 0, -719, 719, 0 -kLinePeriodUs = scalar, S16, 4208, "us", 1, 0, 0, 30000, 0 -rpmSoftLimitWindowSize = scalar, U08, 4210, "RPM", 10.0, 0, 0, 2500, 0 -rpmSoftLimitTimingRetard = scalar, U08, 4211, "deg", 0.2, 0, 0, 50, 1 -rpmSoftLimitFuelAdded = scalar, U08, 4212, "%", 0.2, 0, 0, 50, 1 -rpmHardLimitHyst = scalar, U08, 4213, "RPM", 10.0, 0, 0, 2500, 0 -benchTestOffTime = scalar, U16, 4214, "ms", 0.1, 0, 0, 2000, 1 -boostCutPressureHyst = scalar, U08, 4216, "kPa (absolute)", 0.5, 0, 0, 125, 1 -gearBasedOpenLoopBoostAdder = array, S08, 4217, [10], "%", 0.5, 0, -63, 63, 1 -benchTestCount = scalar, U32, 4228, "", 1, 0, 0, 10000000, 0 -iacByTpsHoldTime = scalar, U08, 4232, "seconds", 0.1, 0, 0, 25, 1 -iacByTpsDecayTime = scalar, U08, 4233, "seconds", 0.1, 0, 0, 25, 1 -tcu_rangeInput1 = bits, U16, 4234, [0:7], $switch_input_pin_e_list -tcu_rangeInput2 = bits, U16, 4236, [0:7], $switch_input_pin_e_list -tcu_rangeInput3 = bits, U16, 4238, [0:7], $switch_input_pin_e_list -tcu_rangeInput4 = bits, U16, 4240, [0:7], $switch_input_pin_e_list -tcu_rangeInput5 = bits, U16, 4242, [0:7], $switch_input_pin_e_list -tcu_rangeInput6 = bits, U16, 4244, [0:7], $switch_input_pin_e_list -tcu_rangeInputMode1 = bits, U08, 4246, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode2 = bits, U08, 4247, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode3 = bits, U08, 4248, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode4 = bits, U08, 4249, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode5 = bits, U08, 4250, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode6 = bits, U08, 4251, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -canVssScaling = scalar, U16, 4252, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 -oilTempSensor_tempC_1 = scalar, F32, 4256, "*C", 1, 0, -55, 200, 1 -oilTempSensor_tempC_2 = scalar, F32, 4260, "*C", 1, 0, -55, 200, 1 -oilTempSensor_tempC_3 = scalar, F32, 4264, "*C", 1, 0, -55, 200, 1 -oilTempSensor_resistance_1 = scalar, F32, 4268, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_resistance_2 = scalar, F32, 4272, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_resistance_3 = scalar, F32, 4276, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_bias_resistor = scalar, F32, 4280, "Ohm", 1, 0, 0, 200000, 1 -oilTempSensor_adcChannel = bits, U08, 4284, [0:5], $adc_channel_e_list -fuelTempSensor_tempC_1 = scalar, F32, 4288, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_tempC_2 = scalar, F32, 4292, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_tempC_3 = scalar, F32, 4296, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_resistance_1 = scalar, F32, 4300, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_resistance_2 = scalar, F32, 4304, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_resistance_3 = scalar, F32, 4308, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_bias_resistor = scalar, F32, 4312, "Ohm", 1, 0, 0, 200000, 1 -fuelTempSensor_adcChannel = bits, U08, 4316, [0:5], $adc_channel_e_list -ambientTempSensor_tempC_1 = scalar, F32, 4320, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_tempC_2 = scalar, F32, 4324, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_tempC_3 = scalar, F32, 4328, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_resistance_1 = scalar, F32, 4332, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_resistance_2 = scalar, F32, 4336, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_resistance_3 = scalar, F32, 4340, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_bias_resistor = scalar, F32, 4344, "Ohm", 1, 0, 0, 200000, 1 -ambientTempSensor_adcChannel = bits, U08, 4348, [0:5], $adc_channel_e_list -compressorDischargeTemperature_tempC_1 = scalar, F32, 4352, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_tempC_2 = scalar, F32, 4356, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_tempC_3 = scalar, F32, 4360, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_resistance_1 = scalar, F32, 4364, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_resistance_2 = scalar, F32, 4368, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_resistance_3 = scalar, F32, 4372, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_bias_resistor = scalar, F32, 4376, "Ohm", 1, 0, 0, 200000, 1 -compressorDischargeTemperature_adcChannel = bits, U08, 4380, [0:5], $adc_channel_e_list -throttleInletPressureChannel = bits, U08, 4384, [0:5], $adc_channel_e_list -compressorDischargePressureChannel = bits, U08, 4385, [0:5], $adc_channel_e_list -dacOutputPins1 = bits, U16, 4386, [0:7], $gpio_list -dacOutputPins2 = bits, U16, 4388, [0:7], $gpio_list -speedometerOutputPin = bits, U16, 4390, [0:8], $output_pin_e_list -speedometerPulsePerKm = scalar, U16, 4392, "", 1, 0, 0, 65000, 0 -simulatorCamPosition1 = scalar, U08, 4394, "", 1, 0, 0, 100, 0 -simulatorCamPosition2 = scalar, U08, 4395, "", 1, 0, 0, 100, 0 -simulatorCamPosition3 = scalar, U08, 4396, "", 1, 0, 0, 100, 0 -simulatorCamPosition4 = scalar, U08, 4397, "", 1, 0, 0, 100, 0 -ignKeyAdcChannel = bits, U08, 4398, [0:5], $adc_channel_e_list -spi6MisoMode = bits, U08, 4399, [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, 4400, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom2 = scalar, F32, 4404, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom3 = scalar, F32, 4408, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom4 = scalar, F32, 4412, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo1 = scalar, F32, 4416, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo2 = scalar, F32, 4420, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo3 = scalar, F32, 4424, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo4 = scalar, F32, 4428, "ratio", 1, 0, 0, 20, 3 -tractionControlEtbDrop = array, S08, 4432, [6x6], "%", 1, 0, -100, 0, 0 -maxInjectorDutyInstant = scalar, U08, 4468, "%", 1, 0, 50, 200, 0 -maxInjectorDutySustained = scalar, U08, 4469, "%", 1, 0, 50, 120, 0 -maxInjectorDutySustainedTimeout = scalar, U08, 4470, "sec", 0.1, 0, 0, 5, 1 -injectionPinsStage21 = bits, U16, 4472, [0:8], $output_pin_e_list -injectionPinsStage22 = bits, U16, 4474, [0:8], $output_pin_e_list -injectionPinsStage23 = bits, U16, 4476, [0:8], $output_pin_e_list -injectionPinsStage24 = bits, U16, 4478, [0:8], $output_pin_e_list -injectionPinsStage25 = bits, U16, 4480, [0:8], $output_pin_e_list -injectionPinsStage26 = bits, U16, 4482, [0:8], $output_pin_e_list -injectionPinsStage27 = bits, U16, 4484, [0:8], $output_pin_e_list -injectionPinsStage28 = bits, U16, 4486, [0:8], $output_pin_e_list -injectionPinsStage29 = bits, U16, 4488, [0:8], $output_pin_e_list -injectionPinsStage210 = bits, U16, 4490, [0:8], $output_pin_e_list -injectionPinsStage211 = bits, U16, 4492, [0:8], $output_pin_e_list -injectionPinsStage212 = bits, U16, 4494, [0:8], $output_pin_e_list -tractionControlTimingDrop = array, S08, 4496, [6x6], "Deg", 1, 0, -100, 100, 0 -tractionControlIgnitionSkip = array, S08, 4532, [6x6], "%", 1, 0, 0, 100, 0 -auxSpeed1Multiplier = scalar, F32, 4568, "", 1, 0, 0, 100, 0 -brakeMeanEffectivePressureDifferential = scalar, F32, 4572, "", 1, 0, 0, 100, 0 -spi4mosiPin = bits, U16, 4576, [0:7], $gpio_list -spi4misoPin = bits, U16, 4578, [0:7], $gpio_list -spi4sckPin = bits, U16, 4580, [0:7], $gpio_list -spi5mosiPin = bits, U16, 4582, [0:7], $gpio_list -spi5misoPin = bits, U16, 4584, [0:7], $gpio_list -spi5sckPin = bits, U16, 4586, [0:7], $gpio_list -spi6mosiPin = bits, U16, 4588, [0:7], $gpio_list -spi6misoPin = bits, U16, 4590, [0:7], $gpio_list -spi6sckPin = bits, U16, 4592, [0:7], $gpio_list -spi4SckMode = bits, U08, 4594, [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, 4595, [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, 4596, [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, 4597, [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, 4598, [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, 4599, [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, 4600, [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, 4601, [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, 4602, [120], "units", 1, 0, 0, 1, 0 -etbBiasBins = array, F32, 4724, [8], "target TPS position", 1, 0, 0, 100, 0 -etbBiasValues = array, F32, 4756, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 -iacPidMultTable = array, U08, 4788, [8x8], "%", 0.05, 0, 0, 10, 2 -iacPidMultLoadBins = array, U08, 4852, [8], "Load", 1, 0, 0, 500, 2 -iacPidMultRpmBins = array, U08, 4860, [8], "RPM", 10.0, 0, 0, 2500, 0 -sparkDwellRpmBins = array, U16, 4868, [8], "RPM", 1, 0, 0, 25000, 0 -sparkDwellValues = array, U16, 4884, [8], "ms", 0.01, 0, 0, 30, 2 -cltIdleRpmBins = array, S08, 4900, [16], "C", 2.0, 0, -40, 200, 0 -cltIdleRpm = array, U08, 4916, [16], "RPM", 20.0, 0, 0, 5000, 0 -cltTimingBins = array, F32, 4932, [8], "C", 1, 0, -100, 250, 1 -cltTimingExtra = array, F32, 4964, [8], "degree", 1, 0, -400, 400, 0 -scriptCurve1Bins = array, F32, 4996, [16], "x", 1, 0, -10000, 10000, 3 -scriptCurve1 = array, F32, 5060, [16], "y", 1, 0, -10000, 10000, 3 -scriptCurve2Bins = array, F32, 5124, [16], "x", 1, 0, -10000, 10000, 3 -scriptCurve2 = array, F32, 5188, [16], "y", 1, 0, -10000, 10000, 3 -scriptCurve3Bins = array, F32, 5252, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve3 = array, F32, 5284, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve4Bins = array, F32, 5316, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve4 = array, F32, 5348, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve5Bins = array, F32, 5380, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve5 = array, F32, 5412, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve6Bins = array, F32, 5444, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve6 = array, F32, 5476, [8], "y", 1, 0, -10000, 10000, 3 -baroCorrPressureBins = array, F32, 5508, [4], "kPa", 1, 0, 0, 200, 2 -baroCorrRpmBins = array, F32, 5524, [4], "RPM", 1, 0, 0, 18000, 0 -baroCorrTable = array, F32, 5540, [4x4], "ratio", 1, 0, 0, 2, 2 -crankingTpsCoef = array, F32, 5604, [8], "Ratio", 1, 0, 0, 700, 2 -crankingTpsBins = array, F32, 5636, [8], "%", 1, 0, 0, 100, 2 -crankingAdvanceBins = array, U16, 5668, [4], "RPM", 1, 0, 0, 25000, 0 -crankingAdvance = array, S16, 5676, [4], "deg", 0.01, 0, -20, 90, 2 -iacCoastingRpmBins = array, U08, 5684, [16], "RPM", 100.0, 0, 0, 25000, 0 -iacCoasting = array, U08, 5700, [16], "%", 0.5, 0, 0, 100, 1 -warning_message = string, ASCII, 5716, 120 -fancyOptions1 = scalar, U08, 5836, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5837, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5838, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5839, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5840, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5841, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5842, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5843, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5844, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5845, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5846, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5847, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5848, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5849, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5850, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5851, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5852, [112], "", 1, 0, 0, 100, 0 -boostTableOpenLoop = array, U08, 5964, [8x8], "", 0.5, 0, 0, 100, 1 -boostRpmBins = array, U08, 6028, [8], "RPM", 100.0, 0, 0, 25000, 0 -boostTableClosedLoop = array, U08, 6036, [8x8], "", 2.0, 0, 0, 3000, 0 -boostTpsBins = array, U08, 6100, [8], "%", 1, 0, 0, 100, 0 -pedalToTpsTable = array, U08, 6108, [8x8], "%", 1, 0, 0, 100, 0 -pedalToTpsPedalBins = array, U08, 6172, [8], "%", 1, 0, 0, 120, 0 -pedalToTpsRpmBins = array, U08, 6180, [8], "RPM", 100.0, 0, 0, 25000, 0 -cltCrankingCorrBins = array, F32, 6188, [8], "C", 1, 0, -100, 250, 2 -cltCrankingCorr = array, F32, 6220, [8], "%", 1, 0, 0, 500, 2 -idleAdvanceBins = array, U08, 6252, [8], "RPM", 50.0, 0, 0, 12000, 0 -idleAdvance = array, F32, 6260, [8], "deg", 1, 0, -20, 90, 1 -idleVeRpmBins = array, U08, 6292, [4], "RPM", 10.0, 0, 0, 2500, 0 -idleVeLoadBins = array, U08, 6296, [4], "load", 1, 0, 0, 100, 0 -idleVeTable = array, U16, 6300, [4x4], "%", 0.1, 0, 0, 999, 1 -luaScript = string, ASCII, 6332, 8000 -cltFuelCorrBins = array, F32, 14332, [16], "C", 1, 0, -100, 250, 2 -cltFuelCorr = array, F32, 14396, [16], "ratio", 1, 0, 0, 5, 2 -iatFuelCorrBins = array, F32, 14460, [16], "C", 1, 0, -100, 250, 2 -iatFuelCorr = array, F32, 14524, [16], "ratio", 1, 0, 0, 5, 2 -crankingFuelCoef = array, F32, 14588, [8], "ratio", 1, 0, 0, 50, 2 -crankingFuelBins = array, F32, 14620, [8], "C", 1, 0, -80, 170, 2 -crankingCycleCoef = array, F32, 14652, [8], "ratio", 1, 0, 0, 5, 2 -crankingCycleBins = array, F32, 14684, [8], "counter", 1, 0, -80, 170, 0 -cltIdleCorrBins = array, F32, 14716, [16], "C", 1, 0, -100, 250, 2 -cltIdleCorr = array, F32, 14780, [16], "ratio", 1, 0, 0, 10, 2 -mafDecoding = array, F32, 14844, [32], "kg/hour", 1, 0, -500, 4000, 2 -mafDecodingBins = array, F32, 14972, [32], "V", 1, 0, -5, 150, 2 -ignitionIatCorrTable = array, S08, 15100, [8x8], "deg", 0.1, 0, -25, 25, 1 -ignitionIatCorrTempBins = array, S08, 15164, [8], "C", 1, 0, -40, 120, 0 -ignitionIatCorrLoadBins = array, U08, 15172, [8], "Load", 5.0, 0, 0, 1000, 0 -injectionPhase = array, S16, 15180, [16x16], "deg", 1, 0, -720, 720, 0 -injPhaseLoadBins = array, U16, 15692, [16], "Load", 1, 0, 0, 1000, 0 -injPhaseRpmBins = array, U16, 15724, [16], "RPM", 1, 0, 0, 18000, 0 -tcuSolenoidTable = array, U08, 15756, [10x6], "onoff", 1, 0, 0, 1, 0 -mapEstimateTable = array, U16, 15816, [16x16], "kPa", 0.01, 0, 0, 600, 2 -mapEstimateTpsBins = array, U16, 16328, [16], "% TPS", 0.01, 0, 0, 100, 1 -mapEstimateRpmBins = array, U16, 16360, [16], "RPM", 1, 0, 0, 18000, 0 -vvtTable1 = array, S08, 16392, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable1LoadBins = array, U16, 16456, [8], "L", 1, 0, 0, 1000, 0 -vvtTable1RpmBins = array, U16, 16472, [8], "RPM", 1, 0, 0, 18000, 0 -vvtTable2 = array, S08, 16488, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable2LoadBins = array, U16, 16552, [8], "L", 1, 0, 0, 1000, 0 -vvtTable2RpmBins = array, U16, 16568, [8], "RPM", 1, 0, 0, 18000, 0 -ignitionTable = array, S16, 16584, [16x16], "deg", 0.1, 0, -20, 90, 1 -ignitionLoadBins = array, U16, 17096, [16], "Load", 1, 0, 0, 1000, 0 -ignitionRpmBins = array, U16, 17128, [16], "RPM", 1, 0, 0, 18000, 0 -veTable = array, U16, 17160, [16x16], "%", 0.1, 0, 0, 999, 1 -veLoadBins = array, U16, 17672, [16], "kPa", 1, 0, 0, 1000, 0 -veRpmBins = array, U16, 17704, [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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +vrThreshold3_rpmBins = array, U08, 1240, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold3_values = array, U08, 1246, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold3_pin = bits, U16, 1252, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1256, 16 +gpPwmNote2 = string, ASCII, 1272, 16 +gpPwmNote3 = string, ASCII, 1288, 16 +gpPwmNote4 = string, ASCII, 1304, 16 +tps2SecondaryMin = scalar, U16, 1320, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1322, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1324, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1324, [1:1], "false", "true" +oddFireEngine = bits, U32, 1324, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1324, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1324, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1324, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1324, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1324, [7:7], "false", "true" +canReadEnabled = bits, U32, 1324, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1324, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1324, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1324, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1324, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1324, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1324, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1324, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1324, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1324, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1324, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1324, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1324, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1324, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1324, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1324, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1324, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1324, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1324, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1324, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1324, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1324, [29:29], "false", "true" +twoStroke = bits, U32, 1324, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1324, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1328, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1330, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1332, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1333, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1334, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1336, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1336, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1336, [2:2], "false", "true" +complexWallModel = bits, U32, 1336, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1336, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1336, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1336, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1336, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1336, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1336, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1336, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1336, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1336, [12:12], "false", "true" +hondaK = bits, U32, 1336, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1336, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1336, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1336, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1336, [17:17], "false", "true" +flexCranking = bits, U32, 1336, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1336, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1336, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1336, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1336, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1336, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1336, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1336, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1336, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1336, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1336, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1336, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1336, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1336, [31:31], "false", "true" +engineChartSize = scalar, U32, 1340, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1344, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1348, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1350, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1352, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1354, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1356, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1358, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1360, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1364, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1368, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1372, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1376, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1380, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1384, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1388, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1392, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1404, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1406, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1408, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1410, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1412, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1416, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1420, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1424, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1426, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1428, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1430, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1432, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1434, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1436, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1438, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1440, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1442, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1444, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1446, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1448, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1450, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1452, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1456, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1460, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1462, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1464, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1468, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1472, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1476, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1478, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1480, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1482, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1484, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1488, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1490, [0:7], $gpio_list +auxValves1 = bits, U16, 1492, [0:7], $gpio_list +auxValves2 = bits, U16, 1494, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1496, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1498, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1500, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1504, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1508, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1510, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1512, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1516, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1516, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1516, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1516, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1516, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1516, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1516, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1516, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1516, [8:8], "false", "true" +fancySmartS = bits, U32, 1516, [9:9], "false", "true" +fancySmartL = bits, U32, 1516, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1516, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1516, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1516, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1516, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1516, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1520, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1522, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1524, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1526, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1528, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1530, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1531, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1532, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1533, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1540, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1542, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1544, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1545, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1546, [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, 1547, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1548, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1552, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1556, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1560, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1564, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1568, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1572, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1573, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1574, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1575, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1576, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1577, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1578, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1579, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1580, [0:0], "false", "true" +canOpenBLT = bits, U32, 1580, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1580, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1580, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1580, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1580, [5:5], "false", "true" +can1ListenMode = bits, U32, 1580, [6:6], "false", "true" +can2ListenMode = bits, U32, 1580, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1584, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1585, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1586, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1588, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1589, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1590, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1592, [0:7], $gpio_list +can2RxPin = bits, U16, 1594, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1596, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1597, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1598, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1599, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1600, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1602, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1604, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1608, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1624, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1640, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1644, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1648, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1652, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1656, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1658, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1660, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1662, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1664, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1668, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1672, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1676, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1680, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1684, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1686, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1687, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1688, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1692, [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, 1693, [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, 1694, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1695, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1696, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1697, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1698, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1699, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1700, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1701, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1702, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1703, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1710, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1712, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1714, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1716, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1718, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1720, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1722, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1724, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1726, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1728, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1729, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1730, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1731, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1732, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1736, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1880, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1904, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1928, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1932, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1936, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1940, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1944, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1948, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1952, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1956, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1960, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1964, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1968, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1972, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1976, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1980, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1984, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1988, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1992, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1994, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1996, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 2000, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 2004, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 2008, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 2010, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 2012, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 2014, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2016, [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, 2017, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2018, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2019, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2052, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2056, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2060, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2064, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2068, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = bits, U08, 2072, [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, 2073, [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, 2074, [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, 2075, [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, 2076, [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, 2077, [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, 2078, [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, 2079, [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, 2080, [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, 2081, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2082, [0:7], $gpio_list +mc33816_driven = bits, U16, 2084, [0:7], $gpio_list +brakePedalPin = bits, U16, 2086, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2088, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2100, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2102, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2104, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2106, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2108, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2112, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2116, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2120, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2122, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2124, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2126, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2144, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2148, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2152, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2156, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2160, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2168, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2172, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2176, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2180, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2184, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2188, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2190, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2192, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2193, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2194, [0:7], $gpio_list +tle8888_cs = bits, U16, 2196, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2198, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2200, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2204, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2208, [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, 2210, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2212, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2214, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2216, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2218, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2220, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2224, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2228, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2232, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2236, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2240, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2244, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2248, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2252, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2256, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2260, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2264, 16 +scriptCurveName2 = string, ASCII, 2280, 16 +scriptCurveName3 = string, ASCII, 2296, 16 +scriptCurveName4 = string, ASCII, 2312, 16 +scriptCurveName5 = string, ASCII, 2328, 16 +scriptCurveName6 = string, ASCII, 2344, 16 +scriptTableName1 = string, ASCII, 2360, 16 +scriptTableName2 = string, ASCII, 2376, 16 +scriptTableName3 = string, ASCII, 2392, 16 +scriptTableName4 = string, ASCII, 2408, 16 +scriptSettingName1 = string, ASCII, 2424, 16 +scriptSettingName2 = string, ASCII, 2440, 16 +scriptSettingName3 = string, ASCII, 2456, 16 +scriptSettingName4 = string, ASCII, 2472, 16 +scriptSettingName5 = string, ASCII, 2488, 16 +scriptSettingName6 = string, ASCII, 2504, 16 +scriptSettingName7 = string, ASCII, 2520, 16 +scriptSettingName8 = string, ASCII, 2536, 16 +tChargeAirCoefMin = scalar, F32, 2552, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2556, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2560, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2564, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2568, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2572, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2576, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2578, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2580, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2584, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2588, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2592, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2594, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2596, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2600, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2604, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2606, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2608, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2612, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2613, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2614, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2616, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2617, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2618, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2620, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2624, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2625, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2626, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2627, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2628, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2629, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2630, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2631, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2632, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2633, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2634, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2635, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2636, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2644, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2645, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2646, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2647, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2648, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2660, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2666, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2667, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2668, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2672, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2674, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2676, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2678, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2679, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2680, [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, 2681, [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, 2682, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2698, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2714, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2780, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2782, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2784, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2786, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2787, "%", 1, 0, 0, 100, 0 +gppwm2_loadAxis = bits, U08, 2788, [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, 2789, [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, 2790, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2806, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2822, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2888, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2890, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2892, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2894, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2895, "%", 1, 0, 0, 100, 0 +gppwm3_loadAxis = bits, U08, 2896, [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, 2897, [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, 2898, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2914, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2930, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2996, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2998, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 3000, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 3002, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 3003, "%", 1, 0, 0, 100, 0 +gppwm4_loadAxis = bits, U08, 3004, [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, 3005, [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, 3006, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3022, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3038, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3104, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3106, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3108, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3110, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3112, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3114, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3116, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3118, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3120, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3122, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3123, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3124, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3125, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3126, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3127, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3128, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3129, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3130, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3260, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3264, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3268, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3272, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3276, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3277, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3278, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3279, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3280, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3282, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3283, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3284, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3285, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3286, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3288, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3290, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3291, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3292, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3294, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3296, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3298, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3300, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3302, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3304, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3310, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3312, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3314, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3316, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3318, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3320, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3322, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3324, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3326, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3328, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3364, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3376, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3388, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3389, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3390, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3392, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3396, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3400, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3404, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3408, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3412, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3416, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3420, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3424, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3428, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3436, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3438, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3440, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3442, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3444, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3446, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3448, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3450, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3452, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3454, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3456, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3460, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3462, 17 +highSpeedOffsets = array, U16, 3480, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3544, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3546, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3548, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3550, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3552, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3554, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3556, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3558, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3560, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3562, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3564, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3566, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3568, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3569, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3570, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3571, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3572, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3573, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3574, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3576, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3580, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3584, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3588, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3589, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3590, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3591, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3592, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3593, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3594, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3595, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3596, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3597, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3598, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3599, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3600, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3602, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3604, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3605, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3606, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3608, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3610, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3611, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3612, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3613, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3614, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3616, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3617, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3628, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3632, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3633, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3634, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3636, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3638, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3640, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3642, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3644, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3646, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3647, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3648, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3649, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3650, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3651, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3652, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3656, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3660, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3664, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3668, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3672, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3676, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3680, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3684, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3688, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3692, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3696, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3700, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3704, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3708, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3712, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3716, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3720, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3724, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3728, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3732, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3736, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3740, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3744, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3748, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3752, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3756, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3760, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3764, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3768, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3772, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3776, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3780, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3784, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3785, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3786, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3788, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3790, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3792, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3794, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3795, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3796, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3797, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3798, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3799, [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, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3816, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3820, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3824, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3828, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3832, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3868, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3869, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3870, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3878, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3880, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3882, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3884, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3886, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3888, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3890, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3892, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3894, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3896, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3932, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3968, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3972, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3976, [0:7], $gpio_list +spi4misoPin = bits, U16, 3978, [0:7], $gpio_list +spi4sckPin = bits, U16, 3980, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3982, [0:7], $gpio_list +spi5misoPin = bits, U16, 3984, [0:7], $gpio_list +spi5sckPin = bits, U16, 3986, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3988, [0:7], $gpio_list +spi6misoPin = bits, U16, 3990, [0:7], $gpio_list +spi6sckPin = bits, U16, 3992, [0:7], $gpio_list +spi4SckMode = bits, U08, 3994, [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, 3995, [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, 3996, [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, 3997, [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, 3998, [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, 3999, [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, 4000, [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, 4001, [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, 4002, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4244, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4276, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4308, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4372, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4380, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4388, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4404, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4420, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4436, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4452, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4484, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4516, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4580, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4644, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4708, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4772, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4804, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4836, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4868, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4900, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4932, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4964, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4996, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5028, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5044, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5060, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5124, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5156, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5188, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5196, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5204, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5220, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5236, 120 +fancyOptions1 = scalar, U08, 5356, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5357, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5358, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5359, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5360, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5361, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5362, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5363, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5364, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5365, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5366, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5367, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5368, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5369, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5370, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5371, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5372, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5436, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5444, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5508, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5516, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5580, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5588, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5596, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5628, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5660, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5668, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5700, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5704, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5708, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5740, 8000 +cltFuelCorrBins = array, F32, 13740, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13804, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13868, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13932, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13996, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14028, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14060, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14092, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14124, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14188, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14252, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14380, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14508, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14572, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14580, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14588, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15100, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15132, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15164, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15224, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15736, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15768, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15800, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15864, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15880, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15896, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15960, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15976, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15992, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16504, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16536, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16568, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17080, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17112, [16], "RPM", 1, 0, 0, 18000, 0 #if LAMBDA -lambdaTable = array, U08, 17736, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 +lambdaTable = array, U08, 17144, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 #else -lambdaTable = array, U08, 17736, [16x16], "afr", 0.1, 0, 0, 25, 1 +lambdaTable = array, U08, 17144, [16x16], "afr", 0.1, 0, 0, 25, 1 #endif -lambdaLoadBins = array, U16, 17992, [16], "", 1, 0, 0, 1000, 0 -lambdaRpmBins = array, U16, 18024, [16], "RPM", 1, 0, 0, 18000, 0 -tpsTpsAccelTable = array, F32, 18056, [8x8], "value", 1, 0, 0, 30000, 2 -tpsTpsAccelFromRpmBins = array, F32, 18312, [8], "from", 1, 0, 0, 30000, 2 -tpsTpsAccelToRpmBins = array, F32, 18344, [8], "to", 1, 0, 0, 25500, 2 -scriptTable1 = array, F32, 18376, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable1LoadBins = array, S16, 18632, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable1RpmBins = array, S16, 18648, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable2 = array, F32, 18664, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable2LoadBins = array, S16, 18920, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable2RpmBins = array, S16, 18936, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable3 = array, U08, 18952, [8x8], "value", 1, 0, 0, 255, 0 -scriptTable3LoadBins = array, S16, 19016, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable3RpmBins = array, S16, 19032, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable4 = array, U08, 19048, [10x8], "value", 1, 0, 0, 255, 0 -scriptTable4LoadBins = array, S16, 19128, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable4RpmBins = array, S16, 19144, [10], "RPM", 1, 0, -32000, 32000, 0 -ignTrimLoadBins = array, U16, 19164, [4], "", 1, 0, 0, 1000, 0 -ignTrimRpmBins = array, U16, 19172, [4], "rpm", 1, 0, 0, 20000, 0 -ignTrims1_table = array, S08, 19180, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims2_table = array, S08, 19196, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims3_table = array, S08, 19212, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims4_table = array, S08, 19228, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims5_table = array, S08, 19244, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims6_table = array, S08, 19260, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims7_table = array, S08, 19276, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims8_table = array, S08, 19292, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims9_table = array, S08, 19308, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims10_table = array, S08, 19324, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims11_table = array, S08, 19340, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims12_table = array, S08, 19356, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrimLoadBins = array, U16, 19372, [4], "", 1, 0, 0, 1000, 0 -fuelTrimRpmBins = array, U16, 19380, [4], "rpm", 1, 0, 0, 20000, 0 -fuelTrims1_table = array, S08, 19388, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims2_table = array, S08, 19404, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims3_table = array, S08, 19420, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims4_table = array, S08, 19436, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims5_table = array, S08, 19452, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims6_table = array, S08, 19468, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims7_table = array, S08, 19484, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims8_table = array, S08, 19500, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims9_table = array, S08, 19516, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims10_table = array, S08, 19532, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims11_table = array, S08, 19548, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims12_table = array, S08, 19564, [4x4], "", 0.2, 0, -25, 25, 1 -crankingFuelCoefE100 = array, U16, 19580, [8], "ratio", 0.01, 0, 0, 50, 2 -tcu_pcAirmassBins = array, U08, 19596, [8], "Airmass", 0.02, 0, 0, 255, 2 -tcu_pcValsR = array, U08, 19604, [8], "%", 1, 0, 0, 255, 0 -tcu_pcValsN = array, U08, 19612, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals1 = array, U08, 19620, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals2 = array, U08, 19628, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals3 = array, U08, 19636, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals4 = array, U08, 19644, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals12 = array, U08, 19652, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals23 = array, U08, 19660, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals34 = array, U08, 19668, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals21 = array, U08, 19676, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals32 = array, U08, 19684, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals43 = array, U08, 19692, [8], "%", 1, 0, 0, 255, 0 -tcu_tccTpsBins = array, U08, 19700, [8], "TPS", 1, 0, 0, 255, 0 -tcu_tccLockSpeed = array, U08, 19708, [8], "MPH", 1, 0, 0, 255, 0 -tcu_tccUnlockSpeed = array, U08, 19716, [8], "MPH", 1, 0, 0, 255, 0 -tcu_32SpeedBins = array, U08, 19724, [8], "KPH", 1, 0, 0, 255, 0 -tcu_32Vals = array, U08, 19732, [8], "%", 1, 0, 0, 255, 0 -throttle2TrimTable = array, S08, 19740, [6x6], "%", 0.1, 0, -10, 10, 1 -throttle2TrimTpsBins = array, U08, 19776, [6], "%", 1, 0, 0, 120, 0 -throttle2TrimRpmBins = array, U08, 19782, [6], "RPM", 100.0, 0, 0, 25000, 0 -maxKnockRetardTable = array, U08, 19788, [6x6], "deg", 0.25, 0, 0, 30, 2 -maxKnockRetardLoadBins = array, U08, 19824, [6], "%", 1, 0, 0, 250, 0 -maxKnockRetardRpmBins = array, U08, 19830, [6], "RPM", 100.0, 0, 0, 25000, 0 -ALSTimingRetardTable = array, S16, 19836, [4x4], "deg", 0.1, 0, -60, 0, 1 -alsIgnRetardLoadBins = array, U16, 19868, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnRetardrpmBins = array, U16, 19876, [4], "RPM", 1, 0, 0, 25000, 0 -ALSFuelAdjustment = array, S16, 19884, [4x4], "percent", 0.1, 0, 0, 50, 1 -alsFuelAdjustmentLoadBins = array, U16, 19916, [4], "TPS", 1, 0, 0, 100, 0 -alsFuelAdjustmentrpmBins = array, U16, 19924, [4], "RPM", 1, 0, 0, 25000, 0 -ALSIgnSkipTable = array, S16, 19932, [4x4], "ratio", 10.0, 0, 0, 50, 1 -alsIgnSkipLoadBins = array, U16, 19964, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnSkiprpmBins = array, U16, 19972, [4], "RPM", 1, 0, 0, 25000, 0 -ignBlends1_table = array, S16, 19980, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends1_loadBins = array, U16, 20108, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends1_rpmBins = array, U16, 20124, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends1_blendParameter = bits, U08, 20140, [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, 20141, [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, 20142, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends1_blendValues = array, U08, 20158, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends2_table = array, S16, 20168, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends2_loadBins = array, U16, 20296, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends2_rpmBins = array, U16, 20312, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends2_blendParameter = bits, U08, 20328, [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, 20329, [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, 20330, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends2_blendValues = array, U08, 20346, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends3_table = array, S16, 20356, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends3_loadBins = array, U16, 20484, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends3_rpmBins = array, U16, 20500, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends3_blendParameter = bits, U08, 20516, [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, 20517, [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, 20518, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends3_blendValues = array, U08, 20534, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends4_table = array, S16, 20544, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends4_loadBins = array, U16, 20672, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends4_rpmBins = array, U16, 20688, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends4_blendParameter = bits, U08, 20704, [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, 20705, [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, 20706, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends4_blendValues = array, U08, 20722, [8], "%", 0.5, 0, 0, 100, 1 -veBlends1_table = array, S16, 20732, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends1_loadBins = array, U16, 20860, [8], "Load", 1, 0, 0, 1000, 0 -veBlends1_rpmBins = array, U16, 20876, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends1_blendParameter = bits, U08, 20892, [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, 20893, [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, 20894, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends1_blendValues = array, U08, 20910, [8], "%", 0.5, 0, 0, 100, 1 -veBlends2_table = array, S16, 20920, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends2_loadBins = array, U16, 21048, [8], "Load", 1, 0, 0, 1000, 0 -veBlends2_rpmBins = array, U16, 21064, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends2_blendParameter = bits, U08, 21080, [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, 21081, [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, 21082, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends2_blendValues = array, U08, 21098, [8], "%", 0.5, 0, 0, 100, 1 -veBlends3_table = array, S16, 21108, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends3_loadBins = array, U16, 21236, [8], "Load", 1, 0, 0, 1000, 0 -veBlends3_rpmBins = array, U16, 21252, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends3_blendParameter = bits, U08, 21268, [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, 21269, [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, 21270, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends3_blendValues = array, U08, 21286, [8], "%", 0.5, 0, 0, 100, 1 -veBlends4_table = array, S16, 21296, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends4_loadBins = array, U16, 21424, [8], "Load", 1, 0, 0, 1000, 0 -veBlends4_rpmBins = array, U16, 21440, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends4_blendParameter = bits, U08, 21456, [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, 21457, [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, 21458, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends4_blendValues = array, U08, 21474, [8], "%", 0.5, 0, 0, 100, 1 -throttleEstimateEffectiveAreaBins = array, U16, 21484, [12], "%", 0.1, 0, 0, 100, 1 -throttleEstimateEffectiveAreaValues = array, U16, 21508, [12], "g/s", 0.1, 0, 0, 6500, 1 -boostOpenLoopBlends1_table = array, S16, 21532, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends1_loadBins = array, U16, 21660, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends1_rpmBins = array, U16, 21676, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends1_blendParameter = bits, U08, 21692, [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, 21693, [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, 21694, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends1_blendValues = array, U08, 21710, [8], "%", 0.5, 0, 0, 100, 1 -boostOpenLoopBlends2_table = array, S16, 21720, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends2_loadBins = array, U16, 21848, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends2_rpmBins = array, U16, 21864, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends2_blendParameter = bits, U08, 21880, [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, 21881, [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, 21882, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends2_blendValues = array, U08, 21898, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends1_table = array, S16, 21908, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends1_loadBins = array, U16, 22036, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends1_rpmBins = array, U16, 22052, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends1_blendParameter = bits, U08, 22068, [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, 22069, [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, 22070, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends1_blendValues = array, U08, 22086, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends2_table = array, S16, 22096, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends2_loadBins = array, U16, 22224, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends2_rpmBins = array, U16, 22240, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends2_blendParameter = bits, U08, 22256, [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, 22257, [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, 22258, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends2_blendValues = array, U08, 22274, [8], "%", 0.5, 0, 0, 100, 1 -tcu_rangeP = array, U08, 22284, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeR = array, U08, 22290, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeN = array, U08, 22296, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeD = array, U08, 22302, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM = array, U08, 22308, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM3 = array, U08, 22314, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM2 = array, U08, 22320, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM1 = array, U08, 22326, [6], "level", 1, 0, 0, 3, 0 -tcu_rangePlus = array, U08, 22332, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeMinus = array, U08, 22338, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeLow = array, U08, 22344, [6], "level", 1, 0, 0, 3, 0 -lambdaMaxDeviationTable = array, U08, 22350, [4x4], "lambda", 0.01, 0, 0, 1, 2 -lambdaMaxDeviationLoadBins = array, U16, 22366, [4], "", 1, 0, 0, 1000, 0 -lambdaMaxDeviationRpmBins = array, U16, 22374, [4], "RPM", 1, 0, 0, 18000, 0 -injectorStagingTable = array, U08, 22382, [6x6], "%", 1, 0, 0, 90, 0 -injectorStagingLoadBins = array, U16, 22418, [6], "", 1, 0, 0, 1000, 0 -injectorStagingRpmBins = array, U16, 22430, [6], "RPM", 1, 0, 0, 18000, 0 -; total TS size = 22444 +lambdaLoadBins = array, U16, 17400, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17432, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17464, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17720, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17752, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17784, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18040, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18056, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18072, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18328, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18344, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18360, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18424, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18440, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18456, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18536, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18552, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18572, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18580, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18764, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18780, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18788, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18972, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18988, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 19004, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19092, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19100, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19108, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19116, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19124, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19132, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19140, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19148, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19184, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19190, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19196, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19232, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19238, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19244, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19276, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19284, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19292, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19324, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19332, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19340, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19372, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19380, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19388, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19516, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19532, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19548, [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, 19549, [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, 19550, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19566, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19576, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19704, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19720, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19736, [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, 19737, [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, 19738, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19754, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19764, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19892, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19908, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19924, [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, 19925, [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, 19926, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19942, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19952, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20080, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20096, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20112, [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, 20113, [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, 20114, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20130, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20140, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20268, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20284, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20300, [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, 20301, [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, 20302, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20318, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20328, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20456, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20472, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20488, [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, 20489, [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, 20490, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20506, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20516, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20644, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20660, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20676, [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, 20677, [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, 20678, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20694, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20704, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20832, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20848, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20864, [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, 20865, [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, 20866, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20882, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20892, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20916, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20940, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21068, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21084, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21100, [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, 21101, [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, 21102, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21118, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21128, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21256, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21272, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21288, [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, 21289, [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, 21290, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21306, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21316, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21444, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21460, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21476, [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, 21477, [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, 21478, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21494, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21504, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21632, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21648, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21664, [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, 21665, [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, 21666, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21682, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21692, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21698, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21704, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21710, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21716, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21722, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21728, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21734, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21740, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21746, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21752, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21758, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21774, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21782, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21790, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21826, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21838, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21850, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21858, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21866, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21874, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21882, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21890, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21898, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21914, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21930, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21938, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21954, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22154, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22174, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22184, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22284, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22304, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22314, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22346, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22362, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22366, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22370, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22374, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22382, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22398, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22406, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22414, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22424 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1674,6 +1669,17 @@ injectorStagingRpmBins = array, U16, 22430, [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" @@ -1732,6 +1738,7 @@ injectorStagingRpmBins = array, U16, 22430, [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." @@ -1739,7 +1746,6 @@ injectorStagingRpmBins = array, U16, 22430, [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." @@ -1759,12 +1765,11 @@ injectorStagingRpmBins = array, U16, 22430, [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" @@ -1809,16 +1814,8 @@ injectorStagingRpmBins = array, U16, 22430, [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" @@ -2140,8 +2137,6 @@ injectorStagingRpmBins = array, U16, 22430, [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." @@ -2241,7 +2236,6 @@ injectorStagingRpmBins = array, U16, 22430, [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" @@ -2417,6 +2411,7 @@ injectorStagingRpmBins = array, U16, 22430, [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 diff --git a/firmware/tunerstudio/generated/rusefi_alphax-8chan_f7.ini b/firmware/tunerstudio/generated/rusefi_alphax-8chan_f7.ini index b58f708b9f..f20d42be78 100644 --- a/firmware/tunerstudio/generated/rusefi_alphax-8chan_f7.ini +++ b/firmware/tunerstudio/generated/rusefi_alphax-8chan_f7.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.alphax-8chan_f7.3680373786" + signature = "rusEFI master.2024.03.20.alphax-8chan_f7.2541385618" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.alphax-8chan_f7.3680373786" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.alphax-8chan_f7.2541385618" ; 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="NONE","INVALID","3A - Aux Analog 2","On-board MAP","32A - PPS Sensor Input","31A - TPS Sensor Input","24 - Ignition Key Voltage","INVALID","INVALID","19A - Aux Analog 6","1A - Aux Analog 1","2A - Aux Analog 4","INVALID","29A - CLT Sensor Input","27A - IAT Sensor Input","INVALID","12A - Aux Analog 8","INVALID","11A - Aux Analog 3","INVALID","34A - PPS2 Sensor Input","33A - TPS2 Sensor Input","INVALID","INVALID","INVALID","4A - Aux Analog 7","INVALID","10A - Aux Analog 5","INVALID","28A - Aux Temp 2","28A - Aux Temp 1","INVALID","20A - Aux Analog 9" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:24 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:54 UTC 2024 -pageSize = 22444 +pageSize = 22424 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,1452 +237,1428 @@ 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 -vrThreshold3_rpmBins = array, U08, 1316, [6], "rpm", 50.0, 0, 0, 12000, 0 -vrThreshold3_values = array, U08, 1322, [6], "volts", 0.01, 0, 0, 2.5, 2 -vrThreshold3_pin = bits, U16, 1328, [0:7], $gpio_list -gpPwmNote1 = string, ASCII, 1332, 16 -gpPwmNote2 = string, ASCII, 1348, 16 -gpPwmNote3 = string, ASCII, 1364, 16 -gpPwmNote4 = string, ASCII, 1380, 16 -tps2SecondaryMin = scalar, U16, 1396, "ADC", 1, 0, 0, 1000, 0 -tps2SecondaryMax = scalar, U16, 1398, "ADC", 1, 0, 0, 1000, 0 -widebandOnSecondBus = bits, U32, 1400, [0:0], "1", "2" -fuelClosedLoopCorrectionEnabled = bits, U32, 1400, [1:1], "false", "true" -oddFireEngine = bits, U32, 1400, [2:2], "false", "true" -boardUseTachPullUp = bits, U32, 1400, [3:3], "5v", "12v" -boardUseTempPullUp = bits, U32, 1400, [4:4], "Piggyback Mode", "With Pull Ups" -yesUnderstandLocking = bits, U32, 1400, [5:5], "no", "yes" -silentTriggerError = bits, U32, 1400, [6:6], "false", "true" -useLinearCltSensor = bits, U32, 1400, [7:7], "false", "true" -canReadEnabled = bits, U32, 1400, [8:8], "false", "true" -canWriteEnabled = bits, U32, 1400, [9:9], "false", "true" -useLinearIatSensor = bits, U32, 1400, [10:10], "false", "true" -boardUse2stepPullDown = bits, U32, 1400, [11:11], "With Pull Up", "With Pull Down" -tachPulseDurationAsDutyCycle = bits, U32, 1400, [12:12], "Constant time", "Duty cycle" -isAlternatorControlEnabled = bits, U32, 1400, [13:13], "false", "true" -invertPrimaryTriggerSignal = bits, U32, 1400, [14:14], "Rising", "Falling" -invertSecondaryTriggerSignal = bits, U32, 1400, [15:15], "Rising", "Falling" -cutFuelOnHardLimit = bits, U32, 1400, [16:16], "no", "yes" -cutSparkOnHardLimit = bits, U32, 1400, [17:17], "no", "yes" -launchFuelCutEnable = bits, U32, 1400, [18:18], "false", "true" -launchSparkCutEnable = bits, U32, 1400, [19:19], "false", "true" -boardUseCrankPullUp = bits, U32, 1400, [20:20], "VR", "Hall" -boardUseCamPullDown = bits, U32, 1400, [21:21], "With Pull Up", "With Pull Down" -boardUseCamVrPullUp = bits, U32, 1400, [22:22], "VR", "Hall" -boardUseD2PullDown = bits, U32, 1400, [23:23], "With Pull Up", "With Pull Down" -boardUseD3PullDown = bits, U32, 1400, [24:24], "With Pull Up", "With Pull Down" -boardUseD4PullDown = bits, U32, 1400, [25:25], "With Pull Up", "With Pull Down" -boardUseD5PullDown = bits, U32, 1400, [26:26], "With Pull Up", "With Pull Down" -verboseIsoTp = bits, U32, 1400, [27:27], "false", "true" -engineSnifferFocusOnInputs = bits, U32, 1400, [28:28], "false", "true" -launchActivateInverted = bits, U32, 1400, [29:29], "false", "true" -twoStroke = bits, U32, 1400, [30:30], "Four Stroke", "Two Stroke" -skippedWheelOnCam = bits, U32, 1400, [31:31], "On crankshaft", "On camshaft" -hipOutputChannel = bits, U08, 1404, [0:5], $adc_channel_e_list -acSwitch = bits, U16, 1406, [0:7], $switch_input_pin_e_list -vRefAdcChannel = bits, U08, 1408, [0:5], $adc_channel_e_list -etbNeutralPosition = scalar, U08, 1409, "%", 1, 0, 0, 100, 0 -idleMode = bits, U08, 1410, [0:0], "Open Loop + Closed Loop", "Open Loop" -isInjectionEnabled = bits, U32, 1412, [0:0], "false", "true" -isIgnitionEnabled = bits, U32, 1412, [1:1], "false", "true" -isCylinderCleanupEnabled = bits, U32, 1412, [2:2], "false", "true" -complexWallModel = bits, U32, 1412, [3:3], "Basic (constants)", "Advanced (tables)" -alwaysInstantRpm = bits, U32, 1412, [4:4], "false", "true" -isMapAveragingEnabled = bits, U32, 1412, [5:5], "false", "true" -overrideCrankingIacSetting = bits, U32, 1412, [6:6], "false", "true" -useSeparateAdvanceForIdle = bits, U32, 1412, [7:7], "false", "true" -isWaveAnalyzerEnabled = bits, U32, 1412, [8:8], "false", "true" -useSeparateVeForIdle = bits, U32, 1412, [9:9], "false", "true" -verboseTriggerSynchDetails = bits, U32, 1412, [10:10], "false", "true" -isManualSpinningMode = bits, U32, 1412, [11:11], "false", "true" -cutFuelInAcr = bits, U32, 1412, [12:12], "false", "true" -hondaK = bits, U32, 1412, [13:13], "false", "true" -twoWireBatchIgnition = bits, U32, 1412, [14:14], "false", "true" -useFixedBaroCorrFromMap = bits, U32, 1412, [15:15], "false", "true" -useSeparateAdvanceForCranking = bits, U32, 1412, [16:16], "Fixed (auto taper)", "Table" -useAdvanceCorrectionsForCranking = bits, U32, 1412, [17:17], "false", "true" -flexCranking = bits, U32, 1412, [18:18], "false", "true" -useIacPidMultTable = bits, U32, 1412, [19:19], "false", "true" -isBoostControlEnabled = bits, U32, 1412, [20:20], "false", "true" -launchSmoothRetard = bits, U32, 1412, [21:21], "false", "true" -isPhaseSyncRequiredForIgnition = bits, U32, 1412, [22:22], "false", "true" -useCltBasedRpmLimit = bits, U32, 1412, [23:23], "no", "yes" -forceO2Heating = bits, U32, 1412, [24:24], "no", "yes" -invertVvtControlIntake = bits, U32, 1412, [25:25], "advance", "retard" -invertVvtControlExhaust = bits, U32, 1412, [26:26], "advance", "retard" -useBiQuadOnAuxSpeedSensors = bits, U32, 1412, [27:27], "false", "true" -sdTriggerLog = bits, U32, 1412, [28:28], "normal", "trigger" -ALSActivateInverted = bits, U32, 1412, [29:29], "false", "true" -stepper_dc_use_two_wires = bits, U32, 1412, [30:30], "false", "true" -watchOutForLinearTime = bits, U32, 1412, [31:31], "false", "true" -engineChartSize = scalar, U32, 1416, "count", 1, 0, 0, 300, 0 -turboSpeedSensorMultiplier = scalar, F32, 1420, "mult", 1, 0, 0, 7000, 3 -camInputsDebug1 = bits, U16, 1424, [0:7], $gpio_list -camInputsDebug2 = bits, U16, 1426, [0:7], $gpio_list -camInputsDebug3 = bits, U16, 1428, [0:7], $gpio_list -camInputsDebug4 = bits, U16, 1430, [0:7], $gpio_list -acIdleRpmTarget = scalar, S16, 1432, "RPM", 1, 0, 0, 2000, 0 -warningPeriod = scalar, S16, 1434, "seconds", 1, 0, 0, 60, 0 -knockDetectionWindowStart = scalar, F32, 1436, "angle", 1, 0, -1000, 1000, 2 -knockDetectionWindowEnd = scalar, F32, 1440, "angle", 1, 0, -1000, 1000, 2 -idleStepperReactionTime = scalar, F32, 1444, "ms", 1, 0, 1, 300, 0 -idleStepperTotalSteps = scalar, S32, 1448, "count", 1, 0, 5, 3000, 0 -noAccelAfterHardLimitPeriodSecs = scalar, F32, 1452, "sec", 1, 0, 0, 60, 0 -mapAveragingSchedulingAtIndex = scalar, S32, 1456, "index", 1, 0, 0, 7000, 0 -tachPulseDuractionMs = scalar, F32, 1460, "", 1, 0, 0, 100, 2 -wwaeTau = scalar, F32, 1464, "Seconds", 1, 0, 0, 3, 2 -alternatorControl_pFactor = scalar, F32, 1468, "", 1, 0, -10000, 10000, 4 -alternatorControl_iFactor = scalar, F32, 1472, "", 1, 0, -10000, 10000, 4 -alternatorControl_dFactor = scalar, F32, 1476, "", 1, 0, -10000, 10000, 4 -alternatorControl_offset = scalar, S16, 1480, "", 1, 0, -1000, 1000, 0 -alternatorControl_periodMs = scalar, S16, 1482, "ms", 1, 0, 0, 3000, 0 -alternatorControl_minValue = scalar, S16, 1484, "", 1, 0, -30000, 30000, 0 -alternatorControl_maxValue = scalar, S16, 1486, "", 1, 0, -30000, 30000, 0 -etb_pFactor = scalar, F32, 1488, "", 1, 0, -10000, 10000, 4 -etb_iFactor = scalar, F32, 1492, "", 1, 0, -10000, 10000, 4 -etb_dFactor = scalar, F32, 1496, "", 1, 0, -10000, 10000, 4 -etb_offset = scalar, S16, 1500, "", 1, 0, -1000, 1000, 0 -etb_periodMs = scalar, S16, 1502, "ms", 1, 0, 0, 3000, 0 -etb_minValue = scalar, S16, 1504, "", 1, 0, -30000, 30000, 0 -etb_maxValue = scalar, S16, 1506, "", 1, 0, -30000, 30000, 0 -triggerInputDebugPins1 = bits, U16, 1508, [0:7], $gpio_list -triggerInputDebugPins2 = bits, U16, 1510, [0:7], $gpio_list -airTaperRpmRange = scalar, S16, 1512, "RPM", 1, 0, 0, 1500, 0 -turboSpeedSensorInputPin = bits, U16, 1514, [0:7], $brain_input_pin_e_list -tps2Min = scalar, S16, 1516, "ADC", 1, 0, 0, 1023, 0 -tps2Max = scalar, S16, 1518, "ADC", 1, 0, 0, 1023, 0 -starterControlPin = bits, U16, 1520, [0:8], $output_pin_e_list -startStopButtonMode = bits, U08, 1522, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -mc33816_flag0 = bits, U16, 1524, [0:7], $gpio_list -tachPulsePerRev = scalar, U08, 1526, "Pulse", 1, 0, 1, 255, 0 -mapErrorDetectionTooLow = scalar, F32, 1528, "kPa", 1, 0, -100, 100, 2 -mapErrorDetectionTooHigh = scalar, F32, 1532, "kPa", 1, 0, -100, 800, 2 -multisparkSparkDuration = scalar, U16, 1536, "ms", 0.001, 0, 0, 3, 2 -multisparkDwell = scalar, U16, 1538, "ms", 0.001, 0, 0, 3, 2 -idleRpmPid_pFactor = scalar, F32, 1540, "", 1, 0, -10000, 10000, 4 -idleRpmPid_iFactor = scalar, F32, 1544, "", 1, 0, -10000, 10000, 4 -idleRpmPid_dFactor = scalar, F32, 1548, "", 1, 0, -10000, 10000, 4 -idleRpmPid_offset = scalar, S16, 1552, "", 1, 0, -1000, 1000, 0 -idleRpmPid_periodMs = scalar, S16, 1554, "ms", 1, 0, 0, 3000, 0 -idleRpmPid_minValue = scalar, S16, 1556, "", 1, 0, -30000, 30000, 0 -idleRpmPid_maxValue = scalar, S16, 1558, "", 1, 0, -30000, 30000, 0 -wwaeBeta = scalar, F32, 1560, "Fraction", 1, 0, 0, 1, 2 -binarySerialTxPin = bits, U16, 1564, [0:7], $gpio_list -binarySerialRxPin = bits, U16, 1566, [0:7], $gpio_list -auxValves1 = bits, U16, 1568, [0:7], $gpio_list -auxValves2 = bits, U16, 1570, [0:7], $gpio_list -tcuUpshiftButtonPin = bits, U16, 1572, [0:7], $switch_input_pin_e_list -tcuDownshiftButtonPin = bits, U16, 1574, [0:7], $switch_input_pin_e_list -throttlePedalUpVoltage = scalar, F32, 1576, "voltage", 1, 0, -6, 6, 2 -throttlePedalWOTVoltage = scalar, F32, 1580, "voltage", 1, 0, -6, 6, 2 -startUpFuelPumpDuration = scalar, S16, 1584, "seconds", 1, 0, 0, 6000, 0 -idlePidRpmDeadZone = scalar, S16, 1586, "RPM", 1, 0, 0, 800, 0 -targetVBatt = scalar, F32, 1588, "Volts", 1, 0, 0, 30, 1 -mc33810DisableRecoveryMode = bits, U32, 1592, [0:0], "false", "true" -mc33810Gpgd0Mode = bits, U32, 1592, [1:1], "false", "true" -mc33810Gpgd1Mode = bits, U32, 1592, [2:2], "false", "true" -mc33810Gpgd2Mode = bits, U32, 1592, [3:3], "false", "true" -mc33810Gpgd3Mode = bits, U32, 1592, [4:4], "false", "true" -enableExtendedCanBroadcast = bits, U32, 1592, [5:5], "false", "true" -luaCanRxWorkaround = bits, U32, 1592, [6:6], "false", "true" -flexSensorInverted = bits, U32, 1592, [7:7], "false", "true" -useHardSkipInTraction = bits, U32, 1592, [8:8], "false", "true" -fancySmartS = bits, U32, 1592, [9:9], "false", "true" -fancySmartL = bits, U32, 1592, [10:10], "false", "true" -useAuxSpeedForSlipRatio = bits, U32, 1592, [11:11], "false", "true" -useVssAsSecondWheelSpeed = bits, U32, 1592, [12:12], "false", "true" -is_enabled_spi_5 = bits, U32, 1592, [13:13], "false", "true" -is_enabled_spi_6 = bits, U32, 1592, [14:14], "false", "true" -enableAemXSeriesEgt = bits, U32, 1592, [15:15], "false", "true" -afterCrankingIACtaperDuration = scalar, S16, 1596, "cycles", 1, 0, 0, 5000, 0 -iacByTpsTaper = scalar, S16, 1598, "percent", 1, 0, 0, 500, 0 -auxSerialTxPin = bits, U16, 1600, [0:7], $gpio_list -auxSerialRxPin = bits, U16, 1602, [0:7], $gpio_list -accelerometerCsPin = bits, U16, 1604, [0:7], $gpio_list -tpsAccelLookback = scalar, U08, 1606, "sec", 0.05, 0, 0, 5, 2 -coastingFuelCutVssLow = scalar, U08, 1607, "kph", 1, 0, 0, 255, 0 -coastingFuelCutVssHigh = scalar, U08, 1608, "kph", 1, 0, 0, 255, 0 -noFuelTrimAfterDfcoTime = scalar, U08, 1609, "sec", 0.1, 0, 0, 10, 1 -tpsAccelEnrichmentThreshold = scalar, F32, 1612, "roc", 1, 0, 0, 200, 1 -auxSpeedSensorInputPin1 = bits, U16, 1616, [0:7], $brain_input_pin_e_list -auxSpeedSensorInputPin2 = bits, U16, 1618, [0:7], $brain_input_pin_e_list -totalGearsCount = scalar, U08, 1620, "", 1, 0, 1, 10, 0 -injectionTimingMode = bits, U08, 1621, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" -debugMode = bits, U08, 1622, [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, 1623, "%", 1, 0, 0, 100, 0 -uartConsoleSerialSpeed = scalar, U32, 1624, "BPs", 1, 0, 0, 1000000, 0 -tpsDecelEnleanmentThreshold = scalar, F32, 1628, "roc", 1, 0, 0, 200, 1 -tpsDecelEnleanmentMultiplier = scalar, F32, 1632, "coeff", 1, 0, 0, 200, 2 -auxSerialSpeed = scalar, U32, 1636, "BPs", 1, 0, 0, 1000000, 0 -throttlePedalSecondaryUpVoltage = scalar, F32, 1640, "voltage", 1, 0, -6, 6, 2 -throttlePedalSecondaryWOTVoltage = scalar, F32, 1644, "voltage", 1, 0, -6, 6, 2 -canBaudRate = bits, U08, 1648, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" -veOverrideMode = bits, U08, 1649, [0:1], "None", "MAP", "TPS", "INVALID" -can2BaudRate = bits, U08, 1650, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" -afrOverrideMode = bits, U08, 1651, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" -mc33_hpfp_i_peak = scalar, U08, 1652, "A", 0.1, 0, 0, 25, 1 -mc33_hpfp_i_hold = scalar, U08, 1653, "A", 0.1, 0, 0, 25, 1 -mc33_hpfp_i_hold_off = scalar, U08, 1654, "us", 1, 0, 0, 255, 0 -mc33_hpfp_max_hold = scalar, U08, 1655, "ms", 1, 0, 0, 255, 0 -stepperDcInvertedPins = bits, U32, 1656, [0:0], "false", "true" -canOpenBLT = bits, U32, 1656, [1:1], "false", "true" -can2OpenBLT = bits, U32, 1656, [2:2], "false", "true" -injectorFlowAsMassFlow = bits, U32, 1656, [3:3], "volumetric flow", "mass flow" -boardUseCanTerminator = bits, U32, 1656, [4:4], "false", "true" -kLineDoHondaSend = bits, U32, 1656, [5:5], "false", "true" -can1ListenMode = bits, U32, 1656, [6:6], "false", "true" -can2ListenMode = bits, U32, 1656, [7:7], "false", "true" -camDecoder2jzPosition = scalar, U08, 1660, "", 1, 0, 0, 100, 0 -mc33810maxDwellTimer = bits, U08, 1661, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" -benchTestOnTime = scalar, U16, 1662, "ms", 0.01, 0, 0, 500, 2 -lambdaProtectionRestoreTps = scalar, U08, 1664, "%", 1, 0, 0, 100, 0 -lambdaProtectionRestoreLoad = scalar, U08, 1665, "%", 10.0, 0, 0, 1000, 0 -launchActivatePinMode = bits, U08, 1666, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -can2TxPin = bits, U16, 1668, [0:7], $gpio_list -can2RxPin = bits, U16, 1670, [0:7], $gpio_list -starterControlPinMode = bits, U08, 1672, [0:1], "default", "default inverted", "open collector", "open collector inverted" -wastegatePositionSensor = bits, U08, 1673, [0:5], $adc_channel_e_list -ignOverrideMode = bits, U08, 1674, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" -injectorPressureType = bits, U08, 1675, [0:0], "Low", "High" -hpfpValvePin = bits, U16, 1676, [0:8], $output_pin_e_list -hpfpValvePinMode = bits, U08, 1678, [0:1], "default", "default inverted", "open collector", "open collector inverted" -boostCutPressure = scalar, F32, 1680, "kPa (absolute)", 1, 0, 0, 1000, 0 -tchargeBins = array, U08, 1684, [16], "kg/h", 5.0, 0, 0, 1200, 0 -tchargeValues = array, U08, 1700, [16], "ratio", 0.01, 0, 0, 1, 2 -fixedTiming = scalar, F32, 1716, "deg", 1, 0, -720, 720, 2 -mapLowValueVoltage = scalar, F32, 1720, "v", 1, 0, 0, 10, 2 -mapHighValueVoltage = scalar, F32, 1724, "v", 1, 0, 0, 10, 2 -egoValueShift = scalar, F32, 1728, "value", 1, 0, -10, 10, 2 -vvtPins1 = bits, U16, 1732, [0:8], $output_pin_e_list -vvtPins2 = bits, U16, 1734, [0:8], $output_pin_e_list -vvtPins3 = bits, U16, 1736, [0:8], $output_pin_e_list -vvtPins4 = bits, U16, 1738, [0:8], $output_pin_e_list -sdCardCsPinMode = bits, U08, 1740, [0:1], "default", "default inverted", "open collector", "open collector inverted" -crankingIACposition = scalar, S32, 1744, "percent", 1, 0, -100, 100, 0 -tChargeMinRpmMinTps = scalar, F32, 1748, "", 1, 0, 0, 3, 4 -tChargeMinRpmMaxTps = scalar, F32, 1752, "", 1, 0, 0, 3, 4 -tChargeMaxRpmMinTps = scalar, F32, 1756, "", 1, 0, 0, 3, 4 -tChargeMaxRpmMaxTps = scalar, F32, 1760, "", 1, 0, 0, 3, 4 -vvtOutputFrequency = scalar, U16, 1764, "Hz", 1, 0, 0, 3000, 0 -minimumIgnitionTiming = scalar, S08, 1766, "deg BTDC", 1, 0, -90, 90, 0 -maximumIgnitionTiming = scalar, S08, 1767, "deg BTDC", 1, 0, -90, 90, 0 -alternatorPwmFrequency = scalar, S32, 1768, "Hz", 1, 0, 0, 3000, 0 -vvtMode1 = bits, U08, 1772, [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, 1773, [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, 1774, "%", 1, 0, 0, 100, 0 -primingDelay = scalar, U08, 1775, "sec", 0.01, 0, 0, 1, 2 -auxAnalogInputs1 = bits, U08, 1776, [0:5], $adc_channel_e_list -auxAnalogInputs2 = bits, U08, 1777, [0:5], $adc_channel_e_list -auxAnalogInputs3 = bits, U08, 1778, [0:5], $adc_channel_e_list -auxAnalogInputs4 = bits, U08, 1779, [0:5], $adc_channel_e_list -auxAnalogInputs5 = bits, U08, 1780, [0:5], $adc_channel_e_list -auxAnalogInputs6 = bits, U08, 1781, [0:5], $adc_channel_e_list -auxAnalogInputs7 = bits, U08, 1782, [0:5], $adc_channel_e_list -auxAnalogInputs8 = bits, U08, 1783, [0:5], $adc_channel_e_list -trailingCoilPins1 = bits, U16, 1784, [0:8], $output_pin_e_list -trailingCoilPins2 = bits, U16, 1786, [0:8], $output_pin_e_list -trailingCoilPins3 = bits, U16, 1788, [0:8], $output_pin_e_list -trailingCoilPins4 = bits, U16, 1790, [0:8], $output_pin_e_list -trailingCoilPins5 = bits, U16, 1792, [0:8], $output_pin_e_list -trailingCoilPins6 = bits, U16, 1794, [0:8], $output_pin_e_list -trailingCoilPins7 = bits, U16, 1796, [0:8], $output_pin_e_list -trailingCoilPins8 = bits, U16, 1798, [0:8], $output_pin_e_list -trailingCoilPins9 = bits, U16, 1800, [0:8], $output_pin_e_list -trailingCoilPins10 = bits, U16, 1802, [0:8], $output_pin_e_list -trailingCoilPins11 = bits, U16, 1804, [0:8], $output_pin_e_list -trailingCoilPins12 = bits, U16, 1806, [0:8], $output_pin_e_list -tle8888mode = bits, U08, 1808, [0:1], "Auto", "SemiAuto", "Manual", "Hall" -accelerometerCsPinMode = bits, U08, 1809, [0:1], "default", "default inverted", "open collector", "open collector inverted" -injectorCompensationMode = bits, U08, 1810, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" -fan2PinMode = bits, U08, 1811, [0:1], "default", "default inverted", "open collector", "open collector inverted" -fuelReferencePressure = scalar, F32, 1812, "kPa", 1, 0, 50, 700000, 0 -postCrankingFactor = array, F32, 1816, [6x6], "mult", 1, 0, 1, 3, 2 -postCrankingDurationBins = array, F32, 1960, [6], "count", 1, 0, 0, 1000, 0 -postCrankingCLTBins = array, F32, 1984, [6], "C", 1, 0, -100, 100, 0 -auxTempSensor1_tempC_1 = scalar, F32, 2008, "*C", 1, 0, -55, 200, 1 -auxTempSensor1_tempC_2 = scalar, F32, 2012, "*C", 1, 0, -55, 200, 1 -auxTempSensor1_tempC_3 = scalar, F32, 2016, "*C", 1, 0, -55, 200, 1 -auxTempSensor1_resistance_1 = scalar, F32, 2020, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor1_resistance_2 = scalar, F32, 2024, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor1_resistance_3 = scalar, F32, 2028, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor1_bias_resistor = scalar, F32, 2032, "Ohm", 1, 0, 0, 200000, 1 -auxTempSensor1_adcChannel = bits, U08, 2036, [0:5], $adc_channel_e_list -auxTempSensor2_tempC_1 = scalar, F32, 2040, "*C", 1, 0, -55, 200, 1 -auxTempSensor2_tempC_2 = scalar, F32, 2044, "*C", 1, 0, -55, 200, 1 -auxTempSensor2_tempC_3 = scalar, F32, 2048, "*C", 1, 0, -55, 200, 1 -auxTempSensor2_resistance_1 = scalar, F32, 2052, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor2_resistance_2 = scalar, F32, 2056, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor2_resistance_3 = scalar, F32, 2060, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor2_bias_resistor = scalar, F32, 2064, "Ohm", 1, 0, 0, 200000, 1 -auxTempSensor2_adcChannel = bits, U08, 2068, [0:5], $adc_channel_e_list -knockSamplingDuration = scalar, S16, 2072, "Deg", 1, 0, 0, 720, 0 -etbFreq = scalar, S16, 2074, "Hz", 1, 0, 0, 3000, 0 -etbWastegatePid_pFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 -etbWastegatePid_iFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 -etbWastegatePid_dFactor = scalar, F32, 2084, "", 1, 0, -10000, 10000, 4 -etbWastegatePid_offset = scalar, S16, 2088, "", 1, 0, -1000, 1000, 0 -etbWastegatePid_periodMs = scalar, S16, 2090, "ms", 1, 0, 0, 3000, 0 -etbWastegatePid_minValue = scalar, S16, 2092, "", 1, 0, -30000, 30000, 0 -etbWastegatePid_maxValue = scalar, S16, 2094, "", 1, 0, -30000, 30000, 0 -stepperNumMicroSteps = bits, U08, 2096, [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, 2097, "%", 1, 0, 0, 100, 0 -stepperMaxDutyCycle = scalar, U08, 2098, "%", 1, 0, 0, 100, 0 -sdCardSpiDevice = bits, U08, 2099, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -timing_offset_cylinder1 = scalar, F32, 2100, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder2 = scalar, F32, 2104, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder3 = scalar, F32, 2108, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder4 = scalar, F32, 2112, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder5 = scalar, F32, 2116, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder6 = scalar, F32, 2120, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder7 = scalar, F32, 2124, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder8 = scalar, F32, 2128, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder9 = scalar, F32, 2132, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder10 = scalar, F32, 2136, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder11 = scalar, F32, 2140, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder12 = scalar, F32, 2144, "deg", 1, 0, -720, 720, 1 -idlePidActivationTime = scalar, F32, 2148, "seconds", 1, 0, 0, 60, 1 -spi1SckMode = bits, U08, 2152, [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, 2153, [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, 2154, [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, 2155, [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, 2156, [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, 2157, [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, 2158, [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, 2159, [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, 2160, [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, 2161, [0:1], "default", "default inverted", "open collector", "open collector inverted" -mc33816_rstb = bits, U16, 2162, [0:7], $gpio_list -mc33816_driven = bits, U16, 2164, [0:7], $gpio_list -brakePedalPin = bits, U16, 2166, [0:7], $switch_input_pin_e_list -brakePedalPinMode = bits, U08, 2168, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -auxPid1_pFactor = scalar, F32, 2172, "", 1, 0, -10000, 10000, 4 -auxPid1_iFactor = scalar, F32, 2176, "", 1, 0, -10000, 10000, 4 -auxPid1_dFactor = scalar, F32, 2180, "", 1, 0, -10000, 10000, 4 -auxPid1_offset = scalar, S16, 2184, "", 1, 0, -1000, 1000, 0 -auxPid1_periodMs = scalar, S16, 2186, "ms", 1, 0, 0, 3000, 0 -auxPid1_minValue = scalar, S16, 2188, "", 1, 0, -30000, 30000, 0 -auxPid1_maxValue = scalar, S16, 2190, "", 1, 0, -30000, 30000, 0 -auxPid2_pFactor = scalar, F32, 2192, "", 1, 0, -10000, 10000, 4 -auxPid2_iFactor = scalar, F32, 2196, "", 1, 0, -10000, 10000, 4 -auxPid2_dFactor = scalar, F32, 2200, "", 1, 0, -10000, 10000, 4 -auxPid2_offset = scalar, S16, 2204, "", 1, 0, -1000, 1000, 0 -auxPid2_periodMs = scalar, S16, 2206, "ms", 1, 0, 0, 3000, 0 -auxPid2_minValue = scalar, S16, 2208, "", 1, 0, -30000, 30000, 0 -auxPid2_maxValue = scalar, S16, 2210, "", 1, 0, -30000, 30000, 0 -injectorCorrectionPolynomial1 = scalar, F32, 2212, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial2 = scalar, F32, 2216, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial3 = scalar, F32, 2220, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial4 = scalar, F32, 2224, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial5 = scalar, F32, 2228, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial6 = scalar, F32, 2232, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial7 = scalar, F32, 2236, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial8 = scalar, F32, 2240, "", 1, 0, -1000, 1000, 4 -primeBins = array, S08, 2244, [8], "C", 1, 0, -40, 120, 0 -oilPressure_hwChannel = bits, U08, 2252, [0:5], $adc_channel_e_list -oilPressure_v1 = scalar, F32, 2256, "volts", 1, 0, 0, 10, 2 -oilPressure_value1 = scalar, F32, 2260, "", 1, 0, 0, 1000000, 2 -oilPressure_v2 = scalar, F32, 2264, "volts", 1, 0, 0, 10, 2 -oilPressure_value2 = scalar, F32, 2268, "", 1, 0, 0, 1000000, 2 -accelerometerSpiDevice = bits, U08, 2272, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -fan2Pin = bits, U16, 2274, [0:8], $output_pin_e_list -fan2OnTemperature = scalar, U08, 2276, "deg C", 1, 0, 0, 150, 0 -fan2OffTemperature = scalar, U08, 2277, "deg C", 1, 0, 0, 150, 0 -stepperEnablePin = bits, U16, 2278, [0:7], $gpio_list -tle8888_cs = bits, U16, 2280, [0:7], $gpio_list -tle8888_csPinMode = bits, U08, 2282, [0:1], "default", "default inverted", "open collector", "open collector inverted" -mc33816_cs = bits, U16, 2284, [0:7], $gpio_list -auxFrequencyFilter = scalar, F32, 2288, "hz", 1, 0, 0, 100, 1 -vvtControlMinRpm = scalar, S16, 2292, "RPM", 1, 0, 0, 3000, 0 -sentInputPins1 = bits, U16, 2294, [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, 2296, "%", 1, 0, 0, 100, 0 -etbJamTimeout = scalar, U08, 2297, "sec", 0.02, 0, 0, 5, 2 -etbExpAverageLength = scalar, U16, 2298, "", 1, 0, 0, 32000, 0 -unused645646 = scalar, F32, 2300, "", 1, 0, 0, 100, 0 -coastingFuelCutRpmHigh = scalar, S16, 2304, "rpm", 1, 0, 0, 5000, 0 -coastingFuelCutRpmLow = scalar, S16, 2306, "rpm", 1, 0, 0, 5000, 0 -coastingFuelCutTps = scalar, S16, 2308, "%", 1, 0, 0, 20, 0 -coastingFuelCutClt = scalar, S16, 2310, "C", 1, 0, -100, 100, 0 -pidExtraForLowRpm = scalar, S16, 2312, "%", 1, 0, 0, 100, 0 -coastingFuelCutMap = scalar, S16, 2314, "kPa", 1, 0, 0, 250, 0 -highPressureFuel_hwChannel = bits, U08, 2316, [0:5], $adc_channel_e_list -highPressureFuel_v1 = scalar, F32, 2320, "volts", 1, 0, 0, 10, 2 -highPressureFuel_value1 = scalar, F32, 2324, "", 1, 0, 0, 1000000, 2 -highPressureFuel_v2 = scalar, F32, 2328, "volts", 1, 0, 0, 10, 2 -highPressureFuel_value2 = scalar, F32, 2332, "", 1, 0, 0, 1000000, 2 -lowPressureFuel_hwChannel = bits, U08, 2336, [0:5], $adc_channel_e_list -lowPressureFuel_v1 = scalar, F32, 2340, "volts", 1, 0, 0, 10, 2 -lowPressureFuel_value1 = scalar, F32, 2344, "", 1, 0, 0, 1000000, 2 -lowPressureFuel_v2 = scalar, F32, 2348, "volts", 1, 0, 0, 10, 2 -lowPressureFuel_value2 = scalar, F32, 2352, "", 1, 0, 0, 1000000, 2 -cltRevLimitRpmBins = array, S08, 2356, [4], "C", 1, 0, -40, 120, 0 -cltRevLimitRpm = array, U16, 2360, [4], "RPM", 1, 0, 0, 20000, 0 -scriptCurveName1 = string, ASCII, 2368, 16 -scriptCurveName2 = string, ASCII, 2384, 16 -scriptCurveName3 = string, ASCII, 2400, 16 -scriptCurveName4 = string, ASCII, 2416, 16 -scriptCurveName5 = string, ASCII, 2432, 16 -scriptCurveName6 = string, ASCII, 2448, 16 -scriptTableName1 = string, ASCII, 2464, 16 -scriptTableName2 = string, ASCII, 2480, 16 -scriptTableName3 = string, ASCII, 2496, 16 -scriptTableName4 = string, ASCII, 2512, 16 -scriptSettingName1 = string, ASCII, 2528, 16 -scriptSettingName2 = string, ASCII, 2544, 16 -scriptSettingName3 = string, ASCII, 2560, 16 -scriptSettingName4 = string, ASCII, 2576, 16 -scriptSettingName5 = string, ASCII, 2592, 16 -scriptSettingName6 = string, ASCII, 2608, 16 -scriptSettingName7 = string, ASCII, 2624, 16 -scriptSettingName8 = string, ASCII, 2640, 16 -tChargeAirCoefMin = scalar, F32, 2656, "", 1, 0, 0, 1, 3 -tChargeAirCoefMax = scalar, F32, 2660, "", 1, 0, 0, 1, 3 -tChargeAirFlowMax = scalar, F32, 2664, "kg/h", 1, 0, 0, 1000, 1 -tChargeAirIncrLimit = scalar, F32, 2668, "deg/sec", 1, 0, 0, 100, 1 -tChargeAirDecrLimit = scalar, F32, 2672, "deg/sec", 1, 0, 0, 100, 1 -tChargeMode = bits, U08, 2676, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" -hip9011Gain = scalar, F32, 2680, "", 1, 0, 0, 100, 2 -etb_iTermMin = scalar, S16, 2684, "", 1, 0, -30000, 30000, 0 -etb_iTermMax = scalar, S16, 2686, "", 1, 0, -30000, 30000, 0 -idleTimingPid_pFactor = scalar, F32, 2688, "", 1, 0, -10000, 10000, 4 -idleTimingPid_iFactor = scalar, F32, 2692, "", 1, 0, -10000, 10000, 4 -idleTimingPid_dFactor = scalar, F32, 2696, "", 1, 0, -10000, 10000, 4 -idleTimingPid_offset = scalar, S16, 2700, "", 1, 0, -1000, 1000, 0 -idleTimingPid_periodMs = scalar, S16, 2702, "ms", 1, 0, 0, 3000, 0 -idleTimingPid_minValue = scalar, S16, 2704, "", 1, 0, -30000, 30000, 0 -idleTimingPid_maxValue = scalar, S16, 2706, "", 1, 0, -30000, 30000, 0 -idleTimingSoftEntryTime = scalar, F32, 2708, "", 1, 0, 0, 100, 1 -etbRocExpAverageLength = scalar, S16, 2712, "", 1, 0, 0, 32000, 0 -tpsAccelFractionPeriod = scalar, S16, 2714, "cycles", 1, 0, 0, 500, 0 -tpsAccelFractionDivisor = scalar, F32, 2716, "coef", 1, 0, 1, 100, 2 -tle8888spiDevice = bits, U08, 2720, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -mc33816spiDevice = bits, U08, 2721, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -idlerpmpid_iTermMin = scalar, S16, 2722, "", 1, 0, -30000, 30000, 0 -tle6240spiDevice = bits, U08, 2724, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -stoichRatioPrimary = scalar, U08, 2725, ":1", 0.1, 0, 5, 25, 1 -idlerpmpid_iTermMax = scalar, S16, 2726, "", 1, 0, -30000, 30000, 0 -etbIdleThrottleRange = scalar, F32, 2728, "%", 1, 0, 0, 15, 0 -cylinderBankSelect1 = scalar, U08, 2732, "", 1, 1, 1, 2, 0 -cylinderBankSelect2 = scalar, U08, 2733, "", 1, 1, 1, 2, 0 -cylinderBankSelect3 = scalar, U08, 2734, "", 1, 1, 1, 2, 0 -cylinderBankSelect4 = scalar, U08, 2735, "", 1, 1, 1, 2, 0 -cylinderBankSelect5 = scalar, U08, 2736, "", 1, 1, 1, 2, 0 -cylinderBankSelect6 = scalar, U08, 2737, "", 1, 1, 1, 2, 0 -cylinderBankSelect7 = scalar, U08, 2738, "", 1, 1, 1, 2, 0 -cylinderBankSelect8 = scalar, U08, 2739, "", 1, 1, 1, 2, 0 -cylinderBankSelect9 = scalar, U08, 2740, "", 1, 1, 1, 2, 0 -cylinderBankSelect10 = scalar, U08, 2741, "", 1, 1, 1, 2, 0 -cylinderBankSelect11 = scalar, U08, 2742, "", 1, 1, 1, 2, 0 -cylinderBankSelect12 = scalar, U08, 2743, "", 1, 1, 1, 2, 0 -primeValues = array, U08, 2744, [8], "mg", 5.0, 0, 0, 1250, 0 -triggerCompCenterVolt = scalar, U08, 2752, "V", 0.02, 0, 0, 5.1, 2 -triggerCompHystMin = scalar, U08, 2753, "V", 0.02, 0, 0, 5.1, 2 -triggerCompHystMax = scalar, U08, 2754, "V", 0.02, 0, 0, 5.1, 2 -triggerCompSensorSatRpm = scalar, U08, 2755, "RPM", 50.0, 0, 0, 12000, 0 -tractionControlSlipBins = array, U16, 2756, [6], "ratio", 0.01, 0, 0, 999, 2 -tractionControlSpeedBins = array, U08, 2768, [6], "RPM", 1, 0, 0, 250, 0 -disableFan1AtSpeed = scalar, S08, 2774, "", 1, 0, 0, 100, 0 -disableFan2AtSpeed = scalar, S08, 2775, "", 1, 0, 0, 100, 0 -canVssNbcType = bits, U08, 2776, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" -gppwm1_pin = bits, U16, 2780, [0:8], $output_pin_e_list -gppwm1_dutyIfError = scalar, U08, 2782, "%", 1, 0, 0, 100, 0 -gppwm1_pwmFrequency = scalar, U16, 2784, "hz", 1, 0, 0, 500, 0 -gppwm1_onAboveDuty = scalar, U08, 2786, "%", 1, 0, 0, 100, 0 -gppwm1_offBelowDuty = scalar, U08, 2787, "%", 1, 0, 0, 100, 0 -gppwm1_loadAxis = bits, U08, 2788, [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, 2789, [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, 2790, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm1_rpmBins = array, S16, 2806, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm1_table = array, U08, 2822, [8x8], "duty", 0.5, 0, 0, 100, 1 -gppwm2_pin = bits, U16, 2888, [0:8], $output_pin_e_list -gppwm2_dutyIfError = scalar, U08, 2890, "%", 1, 0, 0, 100, 0 -gppwm2_pwmFrequency = scalar, U16, 2892, "hz", 1, 0, 0, 500, 0 -gppwm2_onAboveDuty = scalar, U08, 2894, "%", 1, 0, 0, 100, 0 -gppwm2_offBelowDuty = scalar, U08, 2895, "%", 1, 0, 0, 100, 0 -gppwm2_loadAxis = bits, U08, 2896, [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, 2897, [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, 2898, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm2_rpmBins = array, S16, 2914, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm2_table = array, U08, 2930, [8x8], "duty", 0.5, 0, 0, 100, 1 -gppwm3_pin = bits, U16, 2996, [0:8], $output_pin_e_list -gppwm3_dutyIfError = scalar, U08, 2998, "%", 1, 0, 0, 100, 0 -gppwm3_pwmFrequency = scalar, U16, 3000, "hz", 1, 0, 0, 500, 0 -gppwm3_onAboveDuty = scalar, U08, 3002, "%", 1, 0, 0, 100, 0 -gppwm3_offBelowDuty = scalar, U08, 3003, "%", 1, 0, 0, 100, 0 -gppwm3_loadAxis = bits, U08, 3004, [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, 3005, [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, 3006, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm3_rpmBins = array, S16, 3022, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm3_table = array, U08, 3038, [8x8], "duty", 0.5, 0, 0, 100, 1 -gppwm4_pin = bits, U16, 3104, [0:8], $output_pin_e_list -gppwm4_dutyIfError = scalar, U08, 3106, "%", 1, 0, 0, 100, 0 -gppwm4_pwmFrequency = scalar, U16, 3108, "hz", 1, 0, 0, 500, 0 -gppwm4_onAboveDuty = scalar, U08, 3110, "%", 1, 0, 0, 100, 0 -gppwm4_offBelowDuty = scalar, U08, 3111, "%", 1, 0, 0, 100, 0 -gppwm4_loadAxis = bits, U08, 3112, [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, 3113, [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, 3114, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm4_rpmBins = array, S16, 3130, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm4_table = array, U08, 3146, [8x8], "duty", 0.5, 0, 0, 100, 1 -mc33_i_boost = scalar, U16, 3212, "mA", 1, 0, 1000, 25000, 0 -mc33_i_peak = scalar, U16, 3214, "mA", 1, 0, 1000, 20000, 0 -mc33_i_hold = scalar, U16, 3216, "mA", 1, 0, 1000, 20000, 0 -mc33_t_max_boost = scalar, U16, 3218, "us", 1, 0, 0, 10000, 0 -mc33_t_peak_off = scalar, U16, 3220, "us", 1, 0, 0, 10000, 0 -mc33_t_peak_tot = scalar, U16, 3222, "us", 1, 0, 0, 10000, 0 -mc33_t_bypass = scalar, U16, 3224, "us", 1, 0, 0, 10000, 0 -mc33_t_hold_off = scalar, U16, 3226, "us", 1, 0, 0, 10000, 0 -mc33_t_hold_tot = scalar, U16, 3228, "us", 1, 0, 0, 10000, 0 -tcuUpshiftButtonPinMode = bits, U08, 3230, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcuDownshiftButtonPinMode = bits, U08, 3231, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -acSwitchMode = bits, U08, 3232, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_solenoid_mode1 = bits, U08, 3233, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode2 = bits, U08, 3234, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode3 = bits, U08, 3235, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode4 = bits, U08, 3236, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode5 = bits, U08, 3237, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode6 = bits, U08, 3238, [0:1], "default", "default inverted", "open collector", "open collector inverted" -knockBaseNoise = array, S08, 3239, [16], "dB", 0.5, 0, -50, 10, 1 -triggerGapOverrideFrom1 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom2 = scalar, F32, 3260, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom3 = scalar, F32, 3264, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom4 = scalar, F32, 3268, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom5 = scalar, F32, 3272, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom6 = scalar, F32, 3276, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom7 = scalar, F32, 3280, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom8 = scalar, F32, 3284, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom9 = scalar, F32, 3288, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom10 = scalar, F32, 3292, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom11 = scalar, F32, 3296, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom12 = scalar, F32, 3300, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom13 = scalar, F32, 3304, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom14 = scalar, F32, 3308, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom15 = scalar, F32, 3312, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom16 = scalar, F32, 3316, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom17 = scalar, F32, 3320, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom18 = scalar, F32, 3324, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo1 = scalar, F32, 3328, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo2 = scalar, F32, 3332, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo3 = scalar, F32, 3336, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo4 = scalar, F32, 3340, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo5 = scalar, F32, 3344, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo6 = scalar, F32, 3348, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo7 = scalar, F32, 3352, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo8 = scalar, F32, 3356, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo9 = scalar, F32, 3360, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo10 = scalar, F32, 3364, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo11 = scalar, F32, 3368, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo12 = scalar, F32, 3372, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo13 = scalar, F32, 3376, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo14 = scalar, F32, 3380, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo15 = scalar, F32, 3384, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo16 = scalar, F32, 3388, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo17 = scalar, F32, 3392, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo18 = scalar, F32, 3396, "ratio", 1, 0, 0, 20, 3 -maxCamPhaseResolveRpm = scalar, U08, 3400, "rpm", 50.0, 0, 0, 12500, 0 -dfcoDelay = scalar, U08, 3401, "sec", 0.1, 0, 0, 10, 1 -acDelay = scalar, U08, 3402, "sec", 0.1, 0, 0, 10, 1 -fordInjectorSmallPulseBreakPoint = scalar, U16, 3404, "mg", 0.001, 0, 0, 65, 3 -tpsTspCorrValues = array, U08, 3406, [4], "multiplier", 0.02, 0, 0, 5, 2 -etbJamIntegratorLimit = scalar, U08, 3410, "%", 1, 0, 0, 50, 0 -hpfpCamLobes = scalar, U08, 3411, "lobes/cam", 1, 0, 0, 255, 0 -hpfpCam = bits, U08, 3412, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" -auxiliarySetting1 = scalar, U08, 3413, "", 1, 0, 0, 100, 0 -hpfpMinAngle = scalar, U08, 3414, "deg", 1, 0, 0, 255, 0 -hpfpPumpVolume = scalar, U16, 3416, "cc", 0.001, 0, 0, 65, 3 -hpfpActivationAngle = scalar, U08, 3418, "deg", 1, 0, 0, 255, 0 -issFilterReciprocal = scalar, U08, 3419, "", 1, 0, 0, 255, 0 -hpfpPidP = scalar, U16, 3420, "%/kPa", 0.001, 0, 0, 65, 3 -hpfpPidI = scalar, U16, 3422, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 -hpfpTargetDecay = scalar, U16, 3424, "kPa/s", 1, 0, 0, 65000, 0 -hpfpLobeProfileQuantityBins = array, U08, 3426, [16], "%", 0.5, 0, 0, 100, 1 -hpfpLobeProfileAngle = array, U08, 3442, [16], "deg", 0.5, 0, 0, 125, 1 -hpfpDeadtimeVoltsBins = array, U08, 3458, [8], "volts", 1, 0, 0, 255, 0 -hpfpDeadtimeMS = array, U16, 3466, [8], "ms", 0.001, 0, 0, 65, 3 -hpfpTarget = array, U16, 3482, [10x10], "kPa", 1, 0, 0, 65000, 0 -hpfpTargetLoadBins = array, U16, 3682, [10], "load", 0.1, 0, 0, 6500, 1 -hpfpTargetRpmBins = array, U08, 3702, [10], "RPM", 50.0, 0, 0, 12500, 0 -hpfpCompensation = array, S08, 3712, [10x10], "%", 1, 0, -100, 100, 0 -hpfpCompensationLoadBins = array, U16, 3812, [10], "cc/lobe", 0.001, 0, 0, 65, 3 -hpfpCompensationRpmBins = array, U08, 3832, [10], "RPM", 50.0, 0, 0, 12500, 0 -stepper_raw_output1 = bits, U16, 3842, [0:8], $output_pin_e_list -stepper_raw_output2 = bits, U16, 3844, [0:8], $output_pin_e_list -stepper_raw_output3 = bits, U16, 3846, [0:8], $output_pin_e_list -stepper_raw_output4 = bits, U16, 3848, [0:8], $output_pin_e_list -gearRatio1 = scalar, U16, 3850, "ratio", 0.01, 0, 0, 30, 2 -gearRatio2 = scalar, U16, 3852, "ratio", 0.01, 0, 0, 30, 2 -gearRatio3 = scalar, U16, 3854, "ratio", 0.01, 0, 0, 30, 2 -gearRatio4 = scalar, U16, 3856, "ratio", 0.01, 0, 0, 30, 2 -gearRatio5 = scalar, U16, 3858, "ratio", 0.01, 0, 0, 30, 2 -gearRatio6 = scalar, U16, 3860, "ratio", 0.01, 0, 0, 30, 2 -gearRatio7 = scalar, U16, 3862, "ratio", 0.01, 0, 0, 30, 2 -gearRatio8 = scalar, U16, 3864, "ratio", 0.01, 0, 0, 30, 2 -gearRatio9 = scalar, U16, 3866, "ratio", 0.01, 0, 0, 30, 2 -gearRatio10 = scalar, U16, 3868, "ratio", 0.01, 0, 0, 30, 2 -vvtActivationDelayMs = scalar, U16, 3870, "ms", 1, 0, 0, 65000, 0 -wwCltBins = array, S08, 3872, [8], "deg C", 1, 0, -40, 120, 0 -wwTauCltValues = array, U08, 3880, [8], "", 0.01, 0, 0, 2.5, 2 -wwBetaCltValues = array, U08, 3888, [8], "", 0.01, 0, 0, 1, 2 -wwMapBins = array, S08, 3896, [8], "kPa", 1, 0, 0, 250, 0 -wwTauMapValues = array, U08, 3904, [8], "", 0.01, 0, 0, 2.5, 2 -wwBetaMapValues = array, U08, 3912, [8], "", 0.01, 0, 0, 2.5, 2 -torqueTable = array, U08, 3920, [6x6], "Nm", 10.0, 0, 0, 255, 0 -torqueRpmBins = array, U16, 3956, [6], "RPM", 1, 0, 0, 65000, 0 -torqueLoadBins = array, U16, 3968, [6], "Load", 1, 0, 0, 65000, 0 -gearControllerMode = bits, U08, 3980, [0:1], "None", "Button Shift", "INVALID", "INVALID" -transmissionControllerMode = bits, U08, 3981, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" -acrDisablePhase = scalar, U16, 3982, "deg", 1, 0, 0, 720, 0 -auxLinear1_hwChannel = bits, U08, 3984, [0:5], $adc_channel_e_list -auxLinear1_v1 = scalar, F32, 3988, "volts", 1, 0, 0, 10, 2 -auxLinear1_value1 = scalar, F32, 3992, "", 1, 0, 0, 1000000, 2 -auxLinear1_v2 = scalar, F32, 3996, "volts", 1, 0, 0, 10, 2 -auxLinear1_value2 = scalar, F32, 4000, "", 1, 0, 0, 1000000, 2 -auxLinear2_hwChannel = bits, U08, 4004, [0:5], $adc_channel_e_list -auxLinear2_v1 = scalar, F32, 4008, "volts", 1, 0, 0, 10, 2 -auxLinear2_value1 = scalar, F32, 4012, "", 1, 0, 0, 1000000, 2 -auxLinear2_v2 = scalar, F32, 4016, "volts", 1, 0, 0, 10, 2 -auxLinear2_value2 = scalar, F32, 4020, "", 1, 0, 0, 1000000, 2 -tcu_tcc_onoff_solenoid = bits, U16, 4024, [0:8], $output_pin_e_list -tcu_tcc_onoff_solenoid_mode = bits, U08, 4026, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_tcc_pwm_solenoid = bits, U16, 4028, [0:8], $output_pin_e_list -tcu_tcc_pwm_solenoid_mode = bits, U08, 4030, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_tcc_pwm_solenoid_freq = scalar, U16, 4032, "Hz", 1, 0, 0, 3000, 0 -tcu_pc_solenoid_pin = bits, U16, 4034, [0:8], $output_pin_e_list -tcu_pc_solenoid_pin_mode = bits, U08, 4036, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_pc_solenoid_freq = scalar, U16, 4038, "Hz", 1, 0, 0, 3000, 0 -tcu_32_solenoid_pin = bits, U16, 4040, [0:8], $output_pin_e_list -tcu_32_solenoid_pin_mode = bits, U08, 4042, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_32_solenoid_freq = scalar, U16, 4044, "Hz", 1, 0, 0, 3000, 0 -acrPin2 = bits, U16, 4046, [0:8], $output_pin_e_list -etbMinimumPosition = scalar, F32, 4048, "%", 1, 0, 0.01, 100, 2 -tuneHidingKey = scalar, U16, 4052, "", 1, 0, 0, 20000, 0 -vinNumber = string, ASCII, 4054, 17 -highSpeedOffsets = array, U16, 4072, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave -unused3124141 = scalar, F32, 4136, "", 1, 0, 0, 100, 0 -fuelPressureSensorMode = bits, U08, 4140, [0:1], "Absolute", "Gauge", "Differential", "INVALID" -luaDigitalInputPins1 = bits, U16, 4142, [0:7], $switch_input_pin_e_list -luaDigitalInputPins2 = bits, U16, 4144, [0:7], $switch_input_pin_e_list -luaDigitalInputPins3 = bits, U16, 4146, [0:7], $switch_input_pin_e_list -luaDigitalInputPins4 = bits, U16, 4148, [0:7], $switch_input_pin_e_list -luaDigitalInputPins5 = bits, U16, 4150, [0:7], $switch_input_pin_e_list -luaDigitalInputPins6 = bits, U16, 4152, [0:7], $switch_input_pin_e_list -luaDigitalInputPins7 = bits, U16, 4154, [0:7], $switch_input_pin_e_list -luaDigitalInputPins8 = bits, U16, 4156, [0:7], $switch_input_pin_e_list -tpsTspCorrValuesBins = array, U08, 4158, [4], "RPM", 50.0, 0, 0, 17500, 0 -ALSMinRPM = scalar, S16, 4162, "rpm", 1, 0, 0, 20000, 0 -ALSMaxRPM = scalar, S16, 4164, "rpm", 1, 0, 0, 20000, 0 -ALSMaxDuration = scalar, S16, 4166, "sec", 1, 0, 0, 10, 0 -ALSMinCLT = scalar, S08, 4168, "C", 1, 0, 0, 90, 0 -ALSMaxCLT = scalar, S08, 4169, "C", 1, 0, 0, 105, 0 -alsMinTimeBetween = scalar, U08, 4170, "", 1, 0, 0, 20000, 0 -alsEtbPosition = scalar, U08, 4171, "", 1, 0, 0, 20000, 0 -acRelayAlternatorDutyAdder = scalar, U08, 4172, "%", 1, 0, 0, 100, 0 -sentEtbType = bits, S08, 4173, [0:1], "None", "GM type 1", "Ford type 1", "Custom" -customSentTpsMin = scalar, U16, 4174, "", 1, 0, 0, 32000, 0 -ALSIdleAdd = scalar, S32, 4176, "%", 1, 0, 0, 100, 2 -ALSEtbAdd = scalar, S32, 4180, "%", 1, 0, 0, 100, 2 -ALSSkipRatio = scalar, F32, 4184, "", 1, 0, 0, 1, 1 -ALSMaxDriverThrottleIntent = scalar, U08, 4188, "%", 1, 0, 0, 10, 0 -ALSActivatePinMode = bits, U08, 4189, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tpsSecondaryMaximum = scalar, U08, 4190, "%", 0.5, 0, 0, 100, 1 -ppsSecondaryMaximum = scalar, U08, 4191, "%", 0.5, 0, 0, 100, 1 -luaDigitalInputPinModes1 = bits, U08, 4192, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes2 = bits, U08, 4193, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes3 = bits, U08, 4194, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes4 = bits, U08, 4195, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes5 = bits, U08, 4196, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes6 = bits, U08, 4197, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes7 = bits, U08, 4198, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes8 = bits, U08, 4199, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -customSentTpsMax = scalar, U16, 4200, "", 1, 0, 0, 32000, 0 -kLineBaudRate = scalar, U16, 4202, "", 1, 0, 0, 32000, 0 -canGpioType = bits, S08, 4204, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" -uiMode = bits, S08, 4205, [0:1], "Full", "Installation", "Tuning", "INVALID" -hpfpPeakPos = scalar, S16, 4206, "deg", 1, 0, -719, 719, 0 -kLinePeriodUs = scalar, S16, 4208, "us", 1, 0, 0, 30000, 0 -rpmSoftLimitWindowSize = scalar, U08, 4210, "RPM", 10.0, 0, 0, 2500, 0 -rpmSoftLimitTimingRetard = scalar, U08, 4211, "deg", 0.2, 0, 0, 50, 1 -rpmSoftLimitFuelAdded = scalar, U08, 4212, "%", 0.2, 0, 0, 50, 1 -rpmHardLimitHyst = scalar, U08, 4213, "RPM", 10.0, 0, 0, 2500, 0 -benchTestOffTime = scalar, U16, 4214, "ms", 0.1, 0, 0, 2000, 1 -boostCutPressureHyst = scalar, U08, 4216, "kPa (absolute)", 0.5, 0, 0, 125, 1 -gearBasedOpenLoopBoostAdder = array, S08, 4217, [10], "%", 0.5, 0, -63, 63, 1 -benchTestCount = scalar, U32, 4228, "", 1, 0, 0, 10000000, 0 -iacByTpsHoldTime = scalar, U08, 4232, "seconds", 0.1, 0, 0, 25, 1 -iacByTpsDecayTime = scalar, U08, 4233, "seconds", 0.1, 0, 0, 25, 1 -tcu_rangeInput1 = bits, U16, 4234, [0:7], $switch_input_pin_e_list -tcu_rangeInput2 = bits, U16, 4236, [0:7], $switch_input_pin_e_list -tcu_rangeInput3 = bits, U16, 4238, [0:7], $switch_input_pin_e_list -tcu_rangeInput4 = bits, U16, 4240, [0:7], $switch_input_pin_e_list -tcu_rangeInput5 = bits, U16, 4242, [0:7], $switch_input_pin_e_list -tcu_rangeInput6 = bits, U16, 4244, [0:7], $switch_input_pin_e_list -tcu_rangeInputMode1 = bits, U08, 4246, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode2 = bits, U08, 4247, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode3 = bits, U08, 4248, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode4 = bits, U08, 4249, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode5 = bits, U08, 4250, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode6 = bits, U08, 4251, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -canVssScaling = scalar, U16, 4252, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 -oilTempSensor_tempC_1 = scalar, F32, 4256, "*C", 1, 0, -55, 200, 1 -oilTempSensor_tempC_2 = scalar, F32, 4260, "*C", 1, 0, -55, 200, 1 -oilTempSensor_tempC_3 = scalar, F32, 4264, "*C", 1, 0, -55, 200, 1 -oilTempSensor_resistance_1 = scalar, F32, 4268, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_resistance_2 = scalar, F32, 4272, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_resistance_3 = scalar, F32, 4276, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_bias_resistor = scalar, F32, 4280, "Ohm", 1, 0, 0, 200000, 1 -oilTempSensor_adcChannel = bits, U08, 4284, [0:5], $adc_channel_e_list -fuelTempSensor_tempC_1 = scalar, F32, 4288, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_tempC_2 = scalar, F32, 4292, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_tempC_3 = scalar, F32, 4296, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_resistance_1 = scalar, F32, 4300, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_resistance_2 = scalar, F32, 4304, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_resistance_3 = scalar, F32, 4308, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_bias_resistor = scalar, F32, 4312, "Ohm", 1, 0, 0, 200000, 1 -fuelTempSensor_adcChannel = bits, U08, 4316, [0:5], $adc_channel_e_list -ambientTempSensor_tempC_1 = scalar, F32, 4320, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_tempC_2 = scalar, F32, 4324, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_tempC_3 = scalar, F32, 4328, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_resistance_1 = scalar, F32, 4332, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_resistance_2 = scalar, F32, 4336, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_resistance_3 = scalar, F32, 4340, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_bias_resistor = scalar, F32, 4344, "Ohm", 1, 0, 0, 200000, 1 -ambientTempSensor_adcChannel = bits, U08, 4348, [0:5], $adc_channel_e_list -compressorDischargeTemperature_tempC_1 = scalar, F32, 4352, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_tempC_2 = scalar, F32, 4356, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_tempC_3 = scalar, F32, 4360, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_resistance_1 = scalar, F32, 4364, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_resistance_2 = scalar, F32, 4368, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_resistance_3 = scalar, F32, 4372, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_bias_resistor = scalar, F32, 4376, "Ohm", 1, 0, 0, 200000, 1 -compressorDischargeTemperature_adcChannel = bits, U08, 4380, [0:5], $adc_channel_e_list -throttleInletPressureChannel = bits, U08, 4384, [0:5], $adc_channel_e_list -compressorDischargePressureChannel = bits, U08, 4385, [0:5], $adc_channel_e_list -dacOutputPins1 = bits, U16, 4386, [0:7], $gpio_list -dacOutputPins2 = bits, U16, 4388, [0:7], $gpio_list -speedometerOutputPin = bits, U16, 4390, [0:8], $output_pin_e_list -speedometerPulsePerKm = scalar, U16, 4392, "", 1, 0, 0, 65000, 0 -simulatorCamPosition1 = scalar, U08, 4394, "", 1, 0, 0, 100, 0 -simulatorCamPosition2 = scalar, U08, 4395, "", 1, 0, 0, 100, 0 -simulatorCamPosition3 = scalar, U08, 4396, "", 1, 0, 0, 100, 0 -simulatorCamPosition4 = scalar, U08, 4397, "", 1, 0, 0, 100, 0 -ignKeyAdcChannel = bits, U08, 4398, [0:5], $adc_channel_e_list -spi6MisoMode = bits, U08, 4399, [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, 4400, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom2 = scalar, F32, 4404, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom3 = scalar, F32, 4408, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom4 = scalar, F32, 4412, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo1 = scalar, F32, 4416, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo2 = scalar, F32, 4420, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo3 = scalar, F32, 4424, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo4 = scalar, F32, 4428, "ratio", 1, 0, 0, 20, 3 -tractionControlEtbDrop = array, S08, 4432, [6x6], "%", 1, 0, -100, 0, 0 -maxInjectorDutyInstant = scalar, U08, 4468, "%", 1, 0, 50, 200, 0 -maxInjectorDutySustained = scalar, U08, 4469, "%", 1, 0, 50, 120, 0 -maxInjectorDutySustainedTimeout = scalar, U08, 4470, "sec", 0.1, 0, 0, 5, 1 -injectionPinsStage21 = bits, U16, 4472, [0:8], $output_pin_e_list -injectionPinsStage22 = bits, U16, 4474, [0:8], $output_pin_e_list -injectionPinsStage23 = bits, U16, 4476, [0:8], $output_pin_e_list -injectionPinsStage24 = bits, U16, 4478, [0:8], $output_pin_e_list -injectionPinsStage25 = bits, U16, 4480, [0:8], $output_pin_e_list -injectionPinsStage26 = bits, U16, 4482, [0:8], $output_pin_e_list -injectionPinsStage27 = bits, U16, 4484, [0:8], $output_pin_e_list -injectionPinsStage28 = bits, U16, 4486, [0:8], $output_pin_e_list -injectionPinsStage29 = bits, U16, 4488, [0:8], $output_pin_e_list -injectionPinsStage210 = bits, U16, 4490, [0:8], $output_pin_e_list -injectionPinsStage211 = bits, U16, 4492, [0:8], $output_pin_e_list -injectionPinsStage212 = bits, U16, 4494, [0:8], $output_pin_e_list -tractionControlTimingDrop = array, S08, 4496, [6x6], "Deg", 1, 0, -100, 100, 0 -tractionControlIgnitionSkip = array, S08, 4532, [6x6], "%", 1, 0, 0, 100, 0 -auxSpeed1Multiplier = scalar, F32, 4568, "", 1, 0, 0, 100, 0 -brakeMeanEffectivePressureDifferential = scalar, F32, 4572, "", 1, 0, 0, 100, 0 -spi4mosiPin = bits, U16, 4576, [0:7], $gpio_list -spi4misoPin = bits, U16, 4578, [0:7], $gpio_list -spi4sckPin = bits, U16, 4580, [0:7], $gpio_list -spi5mosiPin = bits, U16, 4582, [0:7], $gpio_list -spi5misoPin = bits, U16, 4584, [0:7], $gpio_list -spi5sckPin = bits, U16, 4586, [0:7], $gpio_list -spi6mosiPin = bits, U16, 4588, [0:7], $gpio_list -spi6misoPin = bits, U16, 4590, [0:7], $gpio_list -spi6sckPin = bits, U16, 4592, [0:7], $gpio_list -spi4SckMode = bits, U08, 4594, [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, 4595, [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, 4596, [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, 4597, [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, 4598, [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, 4599, [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, 4600, [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, 4601, [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, 4602, [120], "units", 1, 0, 0, 1, 0 -etbBiasBins = array, F32, 4724, [8], "target TPS position", 1, 0, 0, 100, 0 -etbBiasValues = array, F32, 4756, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 -iacPidMultTable = array, U08, 4788, [8x8], "%", 0.05, 0, 0, 10, 2 -iacPidMultLoadBins = array, U08, 4852, [8], "Load", 1, 0, 0, 500, 2 -iacPidMultRpmBins = array, U08, 4860, [8], "RPM", 10.0, 0, 0, 2500, 0 -sparkDwellRpmBins = array, U16, 4868, [8], "RPM", 1, 0, 0, 25000, 0 -sparkDwellValues = array, U16, 4884, [8], "ms", 0.01, 0, 0, 30, 2 -cltIdleRpmBins = array, S08, 4900, [16], "C", 2.0, 0, -40, 200, 0 -cltIdleRpm = array, U08, 4916, [16], "RPM", 20.0, 0, 0, 5000, 0 -cltTimingBins = array, F32, 4932, [8], "C", 1, 0, -100, 250, 1 -cltTimingExtra = array, F32, 4964, [8], "degree", 1, 0, -400, 400, 0 -scriptCurve1Bins = array, F32, 4996, [16], "x", 1, 0, -10000, 10000, 3 -scriptCurve1 = array, F32, 5060, [16], "y", 1, 0, -10000, 10000, 3 -scriptCurve2Bins = array, F32, 5124, [16], "x", 1, 0, -10000, 10000, 3 -scriptCurve2 = array, F32, 5188, [16], "y", 1, 0, -10000, 10000, 3 -scriptCurve3Bins = array, F32, 5252, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve3 = array, F32, 5284, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve4Bins = array, F32, 5316, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve4 = array, F32, 5348, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve5Bins = array, F32, 5380, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve5 = array, F32, 5412, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve6Bins = array, F32, 5444, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve6 = array, F32, 5476, [8], "y", 1, 0, -10000, 10000, 3 -baroCorrPressureBins = array, F32, 5508, [4], "kPa", 1, 0, 0, 200, 2 -baroCorrRpmBins = array, F32, 5524, [4], "RPM", 1, 0, 0, 18000, 0 -baroCorrTable = array, F32, 5540, [4x4], "ratio", 1, 0, 0, 2, 2 -crankingTpsCoef = array, F32, 5604, [8], "Ratio", 1, 0, 0, 700, 2 -crankingTpsBins = array, F32, 5636, [8], "%", 1, 0, 0, 100, 2 -crankingAdvanceBins = array, U16, 5668, [4], "RPM", 1, 0, 0, 25000, 0 -crankingAdvance = array, S16, 5676, [4], "deg", 0.01, 0, -20, 90, 2 -iacCoastingRpmBins = array, U08, 5684, [16], "RPM", 100.0, 0, 0, 25000, 0 -iacCoasting = array, U08, 5700, [16], "%", 0.5, 0, 0, 100, 1 -warning_message = string, ASCII, 5716, 120 -fancyOptions1 = scalar, U08, 5836, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5837, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5838, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5839, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5840, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5841, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5842, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5843, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5844, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5845, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5846, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5847, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5848, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5849, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5850, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5851, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5852, [112], "", 1, 0, 0, 100, 0 -boostTableOpenLoop = array, U08, 5964, [8x8], "", 0.5, 0, 0, 100, 1 -boostRpmBins = array, U08, 6028, [8], "RPM", 100.0, 0, 0, 25000, 0 -boostTableClosedLoop = array, U08, 6036, [8x8], "", 2.0, 0, 0, 3000, 0 -boostTpsBins = array, U08, 6100, [8], "%", 1, 0, 0, 100, 0 -pedalToTpsTable = array, U08, 6108, [8x8], "%", 1, 0, 0, 100, 0 -pedalToTpsPedalBins = array, U08, 6172, [8], "%", 1, 0, 0, 120, 0 -pedalToTpsRpmBins = array, U08, 6180, [8], "RPM", 100.0, 0, 0, 25000, 0 -cltCrankingCorrBins = array, F32, 6188, [8], "C", 1, 0, -100, 250, 2 -cltCrankingCorr = array, F32, 6220, [8], "%", 1, 0, 0, 500, 2 -idleAdvanceBins = array, U08, 6252, [8], "RPM", 50.0, 0, 0, 12000, 0 -idleAdvance = array, F32, 6260, [8], "deg", 1, 0, -20, 90, 1 -idleVeRpmBins = array, U08, 6292, [4], "RPM", 10.0, 0, 0, 2500, 0 -idleVeLoadBins = array, U08, 6296, [4], "load", 1, 0, 0, 100, 0 -idleVeTable = array, U16, 6300, [4x4], "%", 0.1, 0, 0, 999, 1 -luaScript = string, ASCII, 6332, 8000 -cltFuelCorrBins = array, F32, 14332, [16], "C", 1, 0, -100, 250, 2 -cltFuelCorr = array, F32, 14396, [16], "ratio", 1, 0, 0, 5, 2 -iatFuelCorrBins = array, F32, 14460, [16], "C", 1, 0, -100, 250, 2 -iatFuelCorr = array, F32, 14524, [16], "ratio", 1, 0, 0, 5, 2 -crankingFuelCoef = array, F32, 14588, [8], "ratio", 1, 0, 0, 50, 2 -crankingFuelBins = array, F32, 14620, [8], "C", 1, 0, -80, 170, 2 -crankingCycleCoef = array, F32, 14652, [8], "ratio", 1, 0, 0, 5, 2 -crankingCycleBins = array, F32, 14684, [8], "counter", 1, 0, -80, 170, 0 -cltIdleCorrBins = array, F32, 14716, [16], "C", 1, 0, -100, 250, 2 -cltIdleCorr = array, F32, 14780, [16], "ratio", 1, 0, 0, 10, 2 -mafDecoding = array, F32, 14844, [32], "kg/hour", 1, 0, -500, 4000, 2 -mafDecodingBins = array, F32, 14972, [32], "V", 1, 0, -5, 150, 2 -ignitionIatCorrTable = array, S08, 15100, [8x8], "deg", 0.1, 0, -25, 25, 1 -ignitionIatCorrTempBins = array, S08, 15164, [8], "C", 1, 0, -40, 120, 0 -ignitionIatCorrLoadBins = array, U08, 15172, [8], "Load", 5.0, 0, 0, 1000, 0 -injectionPhase = array, S16, 15180, [16x16], "deg", 1, 0, -720, 720, 0 -injPhaseLoadBins = array, U16, 15692, [16], "Load", 1, 0, 0, 1000, 0 -injPhaseRpmBins = array, U16, 15724, [16], "RPM", 1, 0, 0, 18000, 0 -tcuSolenoidTable = array, U08, 15756, [10x6], "onoff", 1, 0, 0, 1, 0 -mapEstimateTable = array, U16, 15816, [16x16], "kPa", 0.01, 0, 0, 600, 2 -mapEstimateTpsBins = array, U16, 16328, [16], "% TPS", 0.01, 0, 0, 100, 1 -mapEstimateRpmBins = array, U16, 16360, [16], "RPM", 1, 0, 0, 18000, 0 -vvtTable1 = array, S08, 16392, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable1LoadBins = array, U16, 16456, [8], "L", 1, 0, 0, 1000, 0 -vvtTable1RpmBins = array, U16, 16472, [8], "RPM", 1, 0, 0, 18000, 0 -vvtTable2 = array, S08, 16488, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable2LoadBins = array, U16, 16552, [8], "L", 1, 0, 0, 1000, 0 -vvtTable2RpmBins = array, U16, 16568, [8], "RPM", 1, 0, 0, 18000, 0 -ignitionTable = array, S16, 16584, [16x16], "deg", 0.1, 0, -20, 90, 1 -ignitionLoadBins = array, U16, 17096, [16], "Load", 1, 0, 0, 1000, 0 -ignitionRpmBins = array, U16, 17128, [16], "RPM", 1, 0, 0, 18000, 0 -veTable = array, U16, 17160, [16x16], "%", 0.1, 0, 0, 999, 1 -veLoadBins = array, U16, 17672, [16], "kPa", 1, 0, 0, 1000, 0 -veRpmBins = array, U16, 17704, [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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +vrThreshold3_rpmBins = array, U08, 1240, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold3_values = array, U08, 1246, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold3_pin = bits, U16, 1252, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1256, 16 +gpPwmNote2 = string, ASCII, 1272, 16 +gpPwmNote3 = string, ASCII, 1288, 16 +gpPwmNote4 = string, ASCII, 1304, 16 +tps2SecondaryMin = scalar, U16, 1320, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1322, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1324, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1324, [1:1], "false", "true" +oddFireEngine = bits, U32, 1324, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1324, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1324, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1324, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1324, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1324, [7:7], "false", "true" +canReadEnabled = bits, U32, 1324, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1324, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1324, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1324, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1324, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1324, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1324, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1324, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1324, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1324, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1324, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1324, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1324, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1324, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1324, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1324, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1324, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1324, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1324, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1324, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1324, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1324, [29:29], "false", "true" +twoStroke = bits, U32, 1324, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1324, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1328, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1330, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1332, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1333, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1334, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1336, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1336, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1336, [2:2], "false", "true" +complexWallModel = bits, U32, 1336, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1336, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1336, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1336, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1336, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1336, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1336, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1336, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1336, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1336, [12:12], "false", "true" +hondaK = bits, U32, 1336, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1336, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1336, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1336, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1336, [17:17], "false", "true" +flexCranking = bits, U32, 1336, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1336, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1336, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1336, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1336, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1336, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1336, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1336, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1336, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1336, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1336, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1336, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1336, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1336, [31:31], "false", "true" +engineChartSize = scalar, U32, 1340, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1344, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1348, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1350, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1352, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1354, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1356, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1358, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1360, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1364, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1368, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1372, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1376, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1380, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1384, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1388, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1392, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1404, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1406, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1408, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1410, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1412, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1416, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1420, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1424, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1426, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1428, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1430, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1432, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1434, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1436, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1438, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1440, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1442, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1444, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1446, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1448, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1450, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1452, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1456, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1460, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1462, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1464, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1468, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1472, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1476, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1478, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1480, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1482, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1484, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1488, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1490, [0:7], $gpio_list +auxValves1 = bits, U16, 1492, [0:7], $gpio_list +auxValves2 = bits, U16, 1494, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1496, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1498, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1500, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1504, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1508, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1510, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1512, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1516, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1516, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1516, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1516, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1516, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1516, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1516, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1516, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1516, [8:8], "false", "true" +fancySmartS = bits, U32, 1516, [9:9], "false", "true" +fancySmartL = bits, U32, 1516, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1516, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1516, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1516, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1516, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1516, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1520, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1522, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1524, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1526, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1528, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1530, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1531, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1532, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1533, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1540, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1542, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1544, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1545, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1546, [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, 1547, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1548, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1552, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1556, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1560, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1564, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1568, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1572, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1573, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1574, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1575, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1576, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1577, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1578, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1579, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1580, [0:0], "false", "true" +canOpenBLT = bits, U32, 1580, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1580, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1580, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1580, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1580, [5:5], "false", "true" +can1ListenMode = bits, U32, 1580, [6:6], "false", "true" +can2ListenMode = bits, U32, 1580, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1584, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1585, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1586, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1588, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1589, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1590, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1592, [0:7], $gpio_list +can2RxPin = bits, U16, 1594, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1596, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1597, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1598, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1599, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1600, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1602, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1604, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1608, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1624, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1640, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1644, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1648, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1652, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1656, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1658, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1660, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1662, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1664, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1668, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1672, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1676, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1680, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1684, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1686, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1687, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1688, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1692, [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, 1693, [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, 1694, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1695, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1696, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1697, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1698, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1699, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1700, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1701, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1702, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1703, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1710, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1712, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1714, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1716, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1718, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1720, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1722, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1724, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1726, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1728, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1729, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1730, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1731, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1732, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1736, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1880, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1904, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1928, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1932, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1936, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1940, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1944, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1948, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1952, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1956, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1960, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1964, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1968, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1972, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1976, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1980, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1984, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1988, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1992, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1994, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1996, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 2000, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 2004, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 2008, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 2010, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 2012, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 2014, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2016, [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, 2017, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2018, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2019, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2052, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2056, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2060, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2064, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2068, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = bits, U08, 2072, [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, 2073, [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, 2074, [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, 2075, [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, 2076, [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, 2077, [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, 2078, [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, 2079, [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, 2080, [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, 2081, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2082, [0:7], $gpio_list +mc33816_driven = bits, U16, 2084, [0:7], $gpio_list +brakePedalPin = bits, U16, 2086, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2088, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2100, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2102, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2104, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2106, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2108, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2112, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2116, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2120, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2122, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2124, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2126, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2144, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2148, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2152, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2156, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2160, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2168, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2172, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2176, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2180, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2184, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2188, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2190, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2192, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2193, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2194, [0:7], $gpio_list +tle8888_cs = bits, U16, 2196, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2198, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2200, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2204, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2208, [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, 2210, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2212, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2214, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2216, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2218, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2220, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2224, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2228, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2232, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2236, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2240, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2244, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2248, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2252, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2256, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2260, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2264, 16 +scriptCurveName2 = string, ASCII, 2280, 16 +scriptCurveName3 = string, ASCII, 2296, 16 +scriptCurveName4 = string, ASCII, 2312, 16 +scriptCurveName5 = string, ASCII, 2328, 16 +scriptCurveName6 = string, ASCII, 2344, 16 +scriptTableName1 = string, ASCII, 2360, 16 +scriptTableName2 = string, ASCII, 2376, 16 +scriptTableName3 = string, ASCII, 2392, 16 +scriptTableName4 = string, ASCII, 2408, 16 +scriptSettingName1 = string, ASCII, 2424, 16 +scriptSettingName2 = string, ASCII, 2440, 16 +scriptSettingName3 = string, ASCII, 2456, 16 +scriptSettingName4 = string, ASCII, 2472, 16 +scriptSettingName5 = string, ASCII, 2488, 16 +scriptSettingName6 = string, ASCII, 2504, 16 +scriptSettingName7 = string, ASCII, 2520, 16 +scriptSettingName8 = string, ASCII, 2536, 16 +tChargeAirCoefMin = scalar, F32, 2552, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2556, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2560, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2564, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2568, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2572, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2576, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2578, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2580, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2584, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2588, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2592, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2594, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2596, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2600, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2604, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2606, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2608, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2612, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2613, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2614, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2616, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2617, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2618, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2620, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2624, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2625, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2626, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2627, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2628, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2629, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2630, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2631, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2632, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2633, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2634, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2635, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2636, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2644, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2645, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2646, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2647, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2648, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2660, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2666, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2667, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2668, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2672, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2674, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2676, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2678, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2679, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2680, [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, 2681, [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, 2682, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2698, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2714, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2780, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2782, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2784, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2786, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2787, "%", 1, 0, 0, 100, 0 +gppwm2_loadAxis = bits, U08, 2788, [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, 2789, [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, 2790, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2806, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2822, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2888, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2890, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2892, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2894, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2895, "%", 1, 0, 0, 100, 0 +gppwm3_loadAxis = bits, U08, 2896, [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, 2897, [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, 2898, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2914, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2930, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2996, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2998, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 3000, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 3002, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 3003, "%", 1, 0, 0, 100, 0 +gppwm4_loadAxis = bits, U08, 3004, [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, 3005, [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, 3006, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3022, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3038, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3104, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3106, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3108, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3110, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3112, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3114, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3116, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3118, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3120, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3122, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3123, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3124, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3125, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3126, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3127, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3128, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3129, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3130, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3260, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3264, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3268, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3272, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3276, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3277, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3278, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3279, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3280, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3282, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3283, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3284, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3285, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3286, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3288, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3290, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3291, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3292, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3294, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3296, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3298, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3300, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3302, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3304, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3310, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3312, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3314, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3316, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3318, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3320, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3322, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3324, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3326, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3328, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3364, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3376, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3388, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3389, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3390, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3392, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3396, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3400, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3404, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3408, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3412, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3416, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3420, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3424, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3428, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3436, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3438, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3440, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3442, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3444, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3446, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3448, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3450, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3452, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3454, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3456, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3460, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3462, 17 +highSpeedOffsets = array, U16, 3480, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3544, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3546, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3548, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3550, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3552, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3554, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3556, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3558, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3560, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3562, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3564, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3566, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3568, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3569, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3570, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3571, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3572, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3573, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3574, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3576, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3580, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3584, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3588, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3589, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3590, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3591, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3592, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3593, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3594, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3595, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3596, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3597, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3598, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3599, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3600, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3602, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3604, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3605, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3606, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3608, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3610, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3611, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3612, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3613, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3614, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3616, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3617, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3628, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3632, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3633, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3634, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3636, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3638, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3640, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3642, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3644, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3646, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3647, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3648, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3649, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3650, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3651, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3652, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3656, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3660, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3664, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3668, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3672, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3676, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3680, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3684, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3688, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3692, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3696, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3700, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3704, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3708, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3712, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3716, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3720, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3724, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3728, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3732, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3736, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3740, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3744, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3748, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3752, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3756, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3760, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3764, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3768, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3772, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3776, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3780, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3784, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3785, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3786, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3788, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3790, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3792, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3794, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3795, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3796, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3797, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3798, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3799, [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, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3816, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3820, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3824, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3828, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3832, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3868, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3869, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3870, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3878, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3880, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3882, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3884, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3886, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3888, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3890, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3892, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3894, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3896, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3932, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3968, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3972, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3976, [0:7], $gpio_list +spi4misoPin = bits, U16, 3978, [0:7], $gpio_list +spi4sckPin = bits, U16, 3980, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3982, [0:7], $gpio_list +spi5misoPin = bits, U16, 3984, [0:7], $gpio_list +spi5sckPin = bits, U16, 3986, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3988, [0:7], $gpio_list +spi6misoPin = bits, U16, 3990, [0:7], $gpio_list +spi6sckPin = bits, U16, 3992, [0:7], $gpio_list +spi4SckMode = bits, U08, 3994, [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, 3995, [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, 3996, [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, 3997, [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, 3998, [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, 3999, [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, 4000, [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, 4001, [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, 4002, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4244, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4276, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4308, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4372, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4380, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4388, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4404, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4420, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4436, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4452, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4484, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4516, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4580, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4644, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4708, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4772, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4804, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4836, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4868, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4900, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4932, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4964, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4996, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5028, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5044, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5060, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5124, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5156, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5188, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5196, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5204, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5220, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5236, 120 +fancyOptions1 = scalar, U08, 5356, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5357, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5358, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5359, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5360, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5361, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5362, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5363, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5364, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5365, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5366, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5367, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5368, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5369, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5370, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5371, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5372, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5436, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5444, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5508, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5516, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5580, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5588, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5596, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5628, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5660, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5668, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5700, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5704, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5708, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5740, 8000 +cltFuelCorrBins = array, F32, 13740, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13804, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13868, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13932, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13996, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14028, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14060, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14092, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14124, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14188, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14252, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14380, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14508, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14572, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14580, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14588, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15100, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15132, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15164, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15224, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15736, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15768, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15800, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15864, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15880, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15896, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15960, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15976, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15992, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16504, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16536, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16568, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17080, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17112, [16], "RPM", 1, 0, 0, 18000, 0 #if LAMBDA -lambdaTable = array, U08, 17736, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 +lambdaTable = array, U08, 17144, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 #else -lambdaTable = array, U08, 17736, [16x16], "afr", 0.1, 0, 0, 25, 1 +lambdaTable = array, U08, 17144, [16x16], "afr", 0.1, 0, 0, 25, 1 #endif -lambdaLoadBins = array, U16, 17992, [16], "", 1, 0, 0, 1000, 0 -lambdaRpmBins = array, U16, 18024, [16], "RPM", 1, 0, 0, 18000, 0 -tpsTpsAccelTable = array, F32, 18056, [8x8], "value", 1, 0, 0, 30000, 2 -tpsTpsAccelFromRpmBins = array, F32, 18312, [8], "from", 1, 0, 0, 30000, 2 -tpsTpsAccelToRpmBins = array, F32, 18344, [8], "to", 1, 0, 0, 25500, 2 -scriptTable1 = array, F32, 18376, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable1LoadBins = array, S16, 18632, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable1RpmBins = array, S16, 18648, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable2 = array, F32, 18664, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable2LoadBins = array, S16, 18920, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable2RpmBins = array, S16, 18936, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable3 = array, U08, 18952, [8x8], "value", 1, 0, 0, 255, 0 -scriptTable3LoadBins = array, S16, 19016, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable3RpmBins = array, S16, 19032, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable4 = array, U08, 19048, [10x8], "value", 1, 0, 0, 255, 0 -scriptTable4LoadBins = array, S16, 19128, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable4RpmBins = array, S16, 19144, [10], "RPM", 1, 0, -32000, 32000, 0 -ignTrimLoadBins = array, U16, 19164, [4], "", 1, 0, 0, 1000, 0 -ignTrimRpmBins = array, U16, 19172, [4], "rpm", 1, 0, 0, 20000, 0 -ignTrims1_table = array, S08, 19180, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims2_table = array, S08, 19196, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims3_table = array, S08, 19212, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims4_table = array, S08, 19228, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims5_table = array, S08, 19244, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims6_table = array, S08, 19260, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims7_table = array, S08, 19276, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims8_table = array, S08, 19292, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims9_table = array, S08, 19308, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims10_table = array, S08, 19324, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims11_table = array, S08, 19340, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims12_table = array, S08, 19356, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrimLoadBins = array, U16, 19372, [4], "", 1, 0, 0, 1000, 0 -fuelTrimRpmBins = array, U16, 19380, [4], "rpm", 1, 0, 0, 20000, 0 -fuelTrims1_table = array, S08, 19388, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims2_table = array, S08, 19404, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims3_table = array, S08, 19420, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims4_table = array, S08, 19436, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims5_table = array, S08, 19452, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims6_table = array, S08, 19468, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims7_table = array, S08, 19484, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims8_table = array, S08, 19500, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims9_table = array, S08, 19516, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims10_table = array, S08, 19532, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims11_table = array, S08, 19548, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims12_table = array, S08, 19564, [4x4], "", 0.2, 0, -25, 25, 1 -crankingFuelCoefE100 = array, U16, 19580, [8], "ratio", 0.01, 0, 0, 50, 2 -tcu_pcAirmassBins = array, U08, 19596, [8], "Airmass", 0.02, 0, 0, 255, 2 -tcu_pcValsR = array, U08, 19604, [8], "%", 1, 0, 0, 255, 0 -tcu_pcValsN = array, U08, 19612, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals1 = array, U08, 19620, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals2 = array, U08, 19628, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals3 = array, U08, 19636, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals4 = array, U08, 19644, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals12 = array, U08, 19652, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals23 = array, U08, 19660, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals34 = array, U08, 19668, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals21 = array, U08, 19676, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals32 = array, U08, 19684, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals43 = array, U08, 19692, [8], "%", 1, 0, 0, 255, 0 -tcu_tccTpsBins = array, U08, 19700, [8], "TPS", 1, 0, 0, 255, 0 -tcu_tccLockSpeed = array, U08, 19708, [8], "MPH", 1, 0, 0, 255, 0 -tcu_tccUnlockSpeed = array, U08, 19716, [8], "MPH", 1, 0, 0, 255, 0 -tcu_32SpeedBins = array, U08, 19724, [8], "KPH", 1, 0, 0, 255, 0 -tcu_32Vals = array, U08, 19732, [8], "%", 1, 0, 0, 255, 0 -throttle2TrimTable = array, S08, 19740, [6x6], "%", 0.1, 0, -10, 10, 1 -throttle2TrimTpsBins = array, U08, 19776, [6], "%", 1, 0, 0, 120, 0 -throttle2TrimRpmBins = array, U08, 19782, [6], "RPM", 100.0, 0, 0, 25000, 0 -maxKnockRetardTable = array, U08, 19788, [6x6], "deg", 0.25, 0, 0, 30, 2 -maxKnockRetardLoadBins = array, U08, 19824, [6], "%", 1, 0, 0, 250, 0 -maxKnockRetardRpmBins = array, U08, 19830, [6], "RPM", 100.0, 0, 0, 25000, 0 -ALSTimingRetardTable = array, S16, 19836, [4x4], "deg", 0.1, 0, -60, 0, 1 -alsIgnRetardLoadBins = array, U16, 19868, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnRetardrpmBins = array, U16, 19876, [4], "RPM", 1, 0, 0, 25000, 0 -ALSFuelAdjustment = array, S16, 19884, [4x4], "percent", 0.1, 0, 0, 50, 1 -alsFuelAdjustmentLoadBins = array, U16, 19916, [4], "TPS", 1, 0, 0, 100, 0 -alsFuelAdjustmentrpmBins = array, U16, 19924, [4], "RPM", 1, 0, 0, 25000, 0 -ALSIgnSkipTable = array, S16, 19932, [4x4], "ratio", 10.0, 0, 0, 50, 1 -alsIgnSkipLoadBins = array, U16, 19964, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnSkiprpmBins = array, U16, 19972, [4], "RPM", 1, 0, 0, 25000, 0 -ignBlends1_table = array, S16, 19980, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends1_loadBins = array, U16, 20108, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends1_rpmBins = array, U16, 20124, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends1_blendParameter = bits, U08, 20140, [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, 20141, [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, 20142, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends1_blendValues = array, U08, 20158, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends2_table = array, S16, 20168, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends2_loadBins = array, U16, 20296, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends2_rpmBins = array, U16, 20312, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends2_blendParameter = bits, U08, 20328, [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, 20329, [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, 20330, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends2_blendValues = array, U08, 20346, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends3_table = array, S16, 20356, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends3_loadBins = array, U16, 20484, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends3_rpmBins = array, U16, 20500, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends3_blendParameter = bits, U08, 20516, [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, 20517, [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, 20518, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends3_blendValues = array, U08, 20534, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends4_table = array, S16, 20544, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends4_loadBins = array, U16, 20672, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends4_rpmBins = array, U16, 20688, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends4_blendParameter = bits, U08, 20704, [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, 20705, [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, 20706, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends4_blendValues = array, U08, 20722, [8], "%", 0.5, 0, 0, 100, 1 -veBlends1_table = array, S16, 20732, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends1_loadBins = array, U16, 20860, [8], "Load", 1, 0, 0, 1000, 0 -veBlends1_rpmBins = array, U16, 20876, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends1_blendParameter = bits, U08, 20892, [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, 20893, [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, 20894, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends1_blendValues = array, U08, 20910, [8], "%", 0.5, 0, 0, 100, 1 -veBlends2_table = array, S16, 20920, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends2_loadBins = array, U16, 21048, [8], "Load", 1, 0, 0, 1000, 0 -veBlends2_rpmBins = array, U16, 21064, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends2_blendParameter = bits, U08, 21080, [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, 21081, [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, 21082, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends2_blendValues = array, U08, 21098, [8], "%", 0.5, 0, 0, 100, 1 -veBlends3_table = array, S16, 21108, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends3_loadBins = array, U16, 21236, [8], "Load", 1, 0, 0, 1000, 0 -veBlends3_rpmBins = array, U16, 21252, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends3_blendParameter = bits, U08, 21268, [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, 21269, [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, 21270, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends3_blendValues = array, U08, 21286, [8], "%", 0.5, 0, 0, 100, 1 -veBlends4_table = array, S16, 21296, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends4_loadBins = array, U16, 21424, [8], "Load", 1, 0, 0, 1000, 0 -veBlends4_rpmBins = array, U16, 21440, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends4_blendParameter = bits, U08, 21456, [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, 21457, [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, 21458, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends4_blendValues = array, U08, 21474, [8], "%", 0.5, 0, 0, 100, 1 -throttleEstimateEffectiveAreaBins = array, U16, 21484, [12], "%", 0.1, 0, 0, 100, 1 -throttleEstimateEffectiveAreaValues = array, U16, 21508, [12], "g/s", 0.1, 0, 0, 6500, 1 -boostOpenLoopBlends1_table = array, S16, 21532, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends1_loadBins = array, U16, 21660, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends1_rpmBins = array, U16, 21676, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends1_blendParameter = bits, U08, 21692, [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, 21693, [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, 21694, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends1_blendValues = array, U08, 21710, [8], "%", 0.5, 0, 0, 100, 1 -boostOpenLoopBlends2_table = array, S16, 21720, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends2_loadBins = array, U16, 21848, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends2_rpmBins = array, U16, 21864, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends2_blendParameter = bits, U08, 21880, [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, 21881, [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, 21882, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends2_blendValues = array, U08, 21898, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends1_table = array, S16, 21908, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends1_loadBins = array, U16, 22036, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends1_rpmBins = array, U16, 22052, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends1_blendParameter = bits, U08, 22068, [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, 22069, [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, 22070, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends1_blendValues = array, U08, 22086, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends2_table = array, S16, 22096, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends2_loadBins = array, U16, 22224, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends2_rpmBins = array, U16, 22240, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends2_blendParameter = bits, U08, 22256, [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, 22257, [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, 22258, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends2_blendValues = array, U08, 22274, [8], "%", 0.5, 0, 0, 100, 1 -tcu_rangeP = array, U08, 22284, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeR = array, U08, 22290, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeN = array, U08, 22296, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeD = array, U08, 22302, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM = array, U08, 22308, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM3 = array, U08, 22314, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM2 = array, U08, 22320, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM1 = array, U08, 22326, [6], "level", 1, 0, 0, 3, 0 -tcu_rangePlus = array, U08, 22332, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeMinus = array, U08, 22338, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeLow = array, U08, 22344, [6], "level", 1, 0, 0, 3, 0 -lambdaMaxDeviationTable = array, U08, 22350, [4x4], "lambda", 0.01, 0, 0, 1, 2 -lambdaMaxDeviationLoadBins = array, U16, 22366, [4], "", 1, 0, 0, 1000, 0 -lambdaMaxDeviationRpmBins = array, U16, 22374, [4], "RPM", 1, 0, 0, 18000, 0 -injectorStagingTable = array, U08, 22382, [6x6], "%", 1, 0, 0, 90, 0 -injectorStagingLoadBins = array, U16, 22418, [6], "", 1, 0, 0, 1000, 0 -injectorStagingRpmBins = array, U16, 22430, [6], "RPM", 1, 0, 0, 18000, 0 -; total TS size = 22444 +lambdaLoadBins = array, U16, 17400, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17432, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17464, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17720, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17752, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17784, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18040, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18056, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18072, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18328, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18344, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18360, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18424, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18440, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18456, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18536, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18552, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18572, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18580, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18764, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18780, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18788, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18972, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18988, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 19004, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19092, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19100, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19108, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19116, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19124, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19132, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19140, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19148, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19184, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19190, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19196, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19232, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19238, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19244, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19276, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19284, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19292, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19324, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19332, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19340, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19372, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19380, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19388, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19516, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19532, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19548, [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, 19549, [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, 19550, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19566, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19576, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19704, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19720, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19736, [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, 19737, [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, 19738, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19754, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19764, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19892, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19908, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19924, [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, 19925, [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, 19926, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19942, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19952, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20080, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20096, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20112, [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, 20113, [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, 20114, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20130, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20140, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20268, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20284, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20300, [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, 20301, [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, 20302, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20318, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20328, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20456, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20472, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20488, [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, 20489, [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, 20490, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20506, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20516, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20644, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20660, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20676, [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, 20677, [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, 20678, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20694, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20704, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20832, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20848, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20864, [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, 20865, [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, 20866, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20882, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20892, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20916, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20940, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21068, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21084, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21100, [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, 21101, [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, 21102, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21118, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21128, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21256, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21272, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21288, [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, 21289, [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, 21290, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21306, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21316, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21444, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21460, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21476, [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, 21477, [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, 21478, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21494, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21504, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21632, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21648, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21664, [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, 21665, [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, 21666, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21682, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21692, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21698, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21704, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21710, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21716, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21722, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21728, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21734, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21740, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21746, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21752, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21758, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21774, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21782, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21790, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21826, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21838, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21850, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21858, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21866, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21874, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21882, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21890, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21898, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21914, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21930, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21938, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21954, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22154, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22174, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22184, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22284, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22304, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22314, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22346, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22362, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22366, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22370, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22374, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22382, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22398, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22406, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22414, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22424 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1674,6 +1669,17 @@ injectorStagingRpmBins = array, U16, 22430, [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" @@ -1732,6 +1738,7 @@ injectorStagingRpmBins = array, U16, 22430, [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." @@ -1739,7 +1746,6 @@ injectorStagingRpmBins = array, U16, 22430, [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." @@ -1759,12 +1765,11 @@ injectorStagingRpmBins = array, U16, 22430, [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" @@ -1809,16 +1814,8 @@ injectorStagingRpmBins = array, U16, 22430, [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" @@ -2140,8 +2137,6 @@ injectorStagingRpmBins = array, U16, 22430, [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." @@ -2241,7 +2236,6 @@ injectorStagingRpmBins = array, U16, 22430, [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" @@ -2417,6 +2411,7 @@ injectorStagingRpmBins = array, U16, 22430, [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 diff --git a/firmware/tunerstudio/generated/rusefi_at_start_f435.ini b/firmware/tunerstudio/generated/rusefi_at_start_f435.ini index 54a08ca022..1ffefd479b 100644 --- a/firmware/tunerstudio/generated/rusefi_at_start_f435.ini +++ b/firmware/tunerstudio/generated/rusefi_at_start_f435.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.at_start_f435.4126914918" + signature = "rusEFI master.2024.03.20.at_start_f435.3118449390" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.at_start_f435.4126914918" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.at_start_f435.3118449390" ; 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 Wed Mar 20 15:36:09 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:38 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_atlas.ini b/firmware/tunerstudio/generated/rusefi_atlas.ini index 150f52ec0e..f2c0aabb83 100644 --- a/firmware/tunerstudio/generated/rusefi_atlas.ini +++ b/firmware/tunerstudio/generated/rusefi_atlas.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.atlas.2986110248" + signature = "rusEFI master.2024.03.20.atlas.4258797216" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.atlas.2986110248" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.atlas.4258797216" ; 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 Wed Mar 20 15:35:59 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:29 UTC 2024 -pageSize = 21928 +pageSize = 21908 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,1449 +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, [4], "RPM", 1, 0, -30000, 30000, 0 -gppwm1_table = array, U08, 2798, [4x8], "duty", 0.5, 0, 0, 100, 1 -gppwm2_pin = bits, U16, 2832, [0:8], $output_pin_e_list -gppwm2_dutyIfError = scalar, U08, 2834, "%", 1, 0, 0, 100, 0 -gppwm2_pwmFrequency = scalar, U16, 2836, "hz", 1, 0, 0, 500, 0 -gppwm2_onAboveDuty = scalar, U08, 2838, "%", 1, 0, 0, 100, 0 -gppwm2_offBelowDuty = scalar, U08, 2839, "%", 1, 0, 0, 100, 0 -gppwm2_loadAxis = bits, U08, 2840, [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, 2841, [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, 2842, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm2_rpmBins = array, S16, 2858, [4], "RPM", 1, 0, -30000, 30000, 0 -gppwm2_table = array, U08, 2866, [4x8], "duty", 0.5, 0, 0, 100, 1 -gppwm3_pin = bits, U16, 2900, [0:8], $output_pin_e_list -gppwm3_dutyIfError = scalar, U08, 2902, "%", 1, 0, 0, 100, 0 -gppwm3_pwmFrequency = scalar, U16, 2904, "hz", 1, 0, 0, 500, 0 -gppwm3_onAboveDuty = scalar, U08, 2906, "%", 1, 0, 0, 100, 0 -gppwm3_offBelowDuty = scalar, U08, 2907, "%", 1, 0, 0, 100, 0 -gppwm3_loadAxis = bits, U08, 2908, [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, 2909, [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, 2910, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm3_rpmBins = array, S16, 2926, [4], "RPM", 1, 0, -30000, 30000, 0 -gppwm3_table = array, U08, 2934, [4x8], "duty", 0.5, 0, 0, 100, 1 -gppwm4_pin = bits, U16, 2968, [0:8], $output_pin_e_list -gppwm4_dutyIfError = scalar, U08, 2970, "%", 1, 0, 0, 100, 0 -gppwm4_pwmFrequency = scalar, U16, 2972, "hz", 1, 0, 0, 500, 0 -gppwm4_onAboveDuty = scalar, U08, 2974, "%", 1, 0, 0, 100, 0 -gppwm4_offBelowDuty = scalar, U08, 2975, "%", 1, 0, 0, 100, 0 -gppwm4_loadAxis = bits, U08, 2976, [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, 2977, [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, 2978, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm4_rpmBins = array, S16, 2994, [4], "RPM", 1, 0, -30000, 30000, 0 -gppwm4_table = array, U08, 3002, [4x8], "duty", 0.5, 0, 0, 100, 1 -mc33_i_boost = scalar, U16, 3036, "mA", 1, 0, 1000, 25000, 0 -mc33_i_peak = scalar, U16, 3038, "mA", 1, 0, 1000, 20000, 0 -mc33_i_hold = scalar, U16, 3040, "mA", 1, 0, 1000, 20000, 0 -mc33_t_max_boost = scalar, U16, 3042, "us", 1, 0, 0, 10000, 0 -mc33_t_peak_off = scalar, U16, 3044, "us", 1, 0, 0, 10000, 0 -mc33_t_peak_tot = scalar, U16, 3046, "us", 1, 0, 0, 10000, 0 -mc33_t_bypass = scalar, U16, 3048, "us", 1, 0, 0, 10000, 0 -mc33_t_hold_off = scalar, U16, 3050, "us", 1, 0, 0, 10000, 0 -mc33_t_hold_tot = scalar, U16, 3052, "us", 1, 0, 0, 10000, 0 -tcuUpshiftButtonPinMode = bits, U08, 3054, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcuDownshiftButtonPinMode = bits, U08, 3055, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -acSwitchMode = bits, U08, 3056, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_solenoid_mode1 = bits, U08, 3057, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode2 = bits, U08, 3058, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode3 = bits, U08, 3059, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode4 = bits, U08, 3060, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode5 = bits, U08, 3061, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode6 = bits, U08, 3062, [0:1], "default", "default inverted", "open collector", "open collector inverted" -knockBaseNoise = array, S08, 3063, [16], "dB", 0.5, 0, -50, 10, 1 -triggerGapOverrideFrom1 = scalar, F32, 3080, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom2 = scalar, F32, 3084, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom3 = scalar, F32, 3088, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom4 = scalar, F32, 3092, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom5 = scalar, F32, 3096, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom6 = scalar, F32, 3100, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom7 = scalar, F32, 3104, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom8 = scalar, F32, 3108, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom9 = scalar, F32, 3112, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom10 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom11 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom12 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom13 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom14 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom15 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom16 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom17 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom18 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo1 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo2 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo3 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo4 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo5 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo6 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo7 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo8 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo9 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo10 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo11 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo12 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo13 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo14 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo15 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo16 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo17 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo18 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 -maxCamPhaseResolveRpm = scalar, U08, 3224, "rpm", 50.0, 0, 0, 12500, 0 -dfcoDelay = scalar, U08, 3225, "sec", 0.1, 0, 0, 10, 1 -acDelay = scalar, U08, 3226, "sec", 0.1, 0, 0, 10, 1 -fordInjectorSmallPulseBreakPoint = scalar, U16, 3228, "mg", 0.001, 0, 0, 65, 3 -tpsTspCorrValues = array, U08, 3230, [4], "multiplier", 0.02, 0, 0, 5, 2 -etbJamIntegratorLimit = scalar, U08, 3234, "%", 1, 0, 0, 50, 0 -hpfpCamLobes = scalar, U08, 3235, "lobes/cam", 1, 0, 0, 255, 0 -hpfpCam = bits, U08, 3236, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" -auxiliarySetting1 = scalar, U08, 3237, "", 1, 0, 0, 100, 0 -hpfpMinAngle = scalar, U08, 3238, "deg", 1, 0, 0, 255, 0 -hpfpPumpVolume = scalar, U16, 3240, "cc", 0.001, 0, 0, 65, 3 -hpfpActivationAngle = scalar, U08, 3242, "deg", 1, 0, 0, 255, 0 -issFilterReciprocal = scalar, U08, 3243, "", 1, 0, 0, 255, 0 -hpfpPidP = scalar, U16, 3244, "%/kPa", 0.001, 0, 0, 65, 3 -hpfpPidI = scalar, U16, 3246, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 -hpfpTargetDecay = scalar, U16, 3248, "kPa/s", 1, 0, 0, 65000, 0 -hpfpLobeProfileQuantityBins = array, U08, 3250, [16], "%", 0.5, 0, 0, 100, 1 -hpfpLobeProfileAngle = array, U08, 3266, [16], "deg", 0.5, 0, 0, 125, 1 -hpfpDeadtimeVoltsBins = array, U08, 3282, [8], "volts", 1, 0, 0, 255, 0 -hpfpDeadtimeMS = array, U16, 3290, [8], "ms", 0.001, 0, 0, 65, 3 -hpfpTarget = array, U16, 3306, [10x10], "kPa", 1, 0, 0, 65000, 0 -hpfpTargetLoadBins = array, U16, 3506, [10], "load", 0.1, 0, 0, 6500, 1 -hpfpTargetRpmBins = array, U08, 3526, [10], "RPM", 50.0, 0, 0, 12500, 0 -hpfpCompensation = array, S08, 3536, [10x10], "%", 1, 0, -100, 100, 0 -hpfpCompensationLoadBins = array, U16, 3636, [10], "cc/lobe", 0.001, 0, 0, 65, 3 -hpfpCompensationRpmBins = array, U08, 3656, [10], "RPM", 50.0, 0, 0, 12500, 0 -stepper_raw_output1 = bits, U16, 3666, [0:8], $output_pin_e_list -stepper_raw_output2 = bits, U16, 3668, [0:8], $output_pin_e_list -stepper_raw_output3 = bits, U16, 3670, [0:8], $output_pin_e_list -stepper_raw_output4 = bits, U16, 3672, [0:8], $output_pin_e_list -gearRatio1 = scalar, U16, 3674, "ratio", 0.01, 0, 0, 30, 2 -gearRatio2 = scalar, U16, 3676, "ratio", 0.01, 0, 0, 30, 2 -gearRatio3 = scalar, U16, 3678, "ratio", 0.01, 0, 0, 30, 2 -gearRatio4 = scalar, U16, 3680, "ratio", 0.01, 0, 0, 30, 2 -gearRatio5 = scalar, U16, 3682, "ratio", 0.01, 0, 0, 30, 2 -gearRatio6 = scalar, U16, 3684, "ratio", 0.01, 0, 0, 30, 2 -gearRatio7 = scalar, U16, 3686, "ratio", 0.01, 0, 0, 30, 2 -gearRatio8 = scalar, U16, 3688, "ratio", 0.01, 0, 0, 30, 2 -gearRatio9 = scalar, U16, 3690, "ratio", 0.01, 0, 0, 30, 2 -gearRatio10 = scalar, U16, 3692, "ratio", 0.01, 0, 0, 30, 2 -vvtActivationDelayMs = scalar, U16, 3694, "ms", 1, 0, 0, 65000, 0 -wwCltBins = array, S08, 3696, [8], "deg C", 1, 0, -40, 120, 0 -wwTauCltValues = array, U08, 3704, [8], "", 0.01, 0, 0, 2.5, 2 -wwBetaCltValues = array, U08, 3712, [8], "", 0.01, 0, 0, 1, 2 -wwMapBins = array, S08, 3720, [8], "kPa", 1, 0, 0, 250, 0 -wwTauMapValues = array, U08, 3728, [8], "", 0.01, 0, 0, 2.5, 2 -wwBetaMapValues = array, U08, 3736, [8], "", 0.01, 0, 0, 2.5, 2 -torqueTable = array, U08, 3744, [6x6], "Nm", 10.0, 0, 0, 255, 0 -torqueRpmBins = array, U16, 3780, [6], "RPM", 1, 0, 0, 65000, 0 -torqueLoadBins = array, U16, 3792, [6], "Load", 1, 0, 0, 65000, 0 -gearControllerMode = bits, U08, 3804, [0:1], "None", "Button Shift", "INVALID", "INVALID" -transmissionControllerMode = bits, U08, 3805, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" -acrDisablePhase = scalar, U16, 3806, "deg", 1, 0, 0, 720, 0 -auxLinear1_hwChannel = bits, U08, 3808, [0:5], $adc_channel_e_list -auxLinear1_v1 = scalar, F32, 3812, "volts", 1, 0, 0, 10, 2 -auxLinear1_value1 = scalar, F32, 3816, "", 1, 0, 0, 1000000, 2 -auxLinear1_v2 = scalar, F32, 3820, "volts", 1, 0, 0, 10, 2 -auxLinear1_value2 = scalar, F32, 3824, "", 1, 0, 0, 1000000, 2 -auxLinear2_hwChannel = bits, U08, 3828, [0:5], $adc_channel_e_list -auxLinear2_v1 = scalar, F32, 3832, "volts", 1, 0, 0, 10, 2 -auxLinear2_value1 = scalar, F32, 3836, "", 1, 0, 0, 1000000, 2 -auxLinear2_v2 = scalar, F32, 3840, "volts", 1, 0, 0, 10, 2 -auxLinear2_value2 = scalar, F32, 3844, "", 1, 0, 0, 1000000, 2 -tcu_tcc_onoff_solenoid = bits, U16, 3848, [0:8], $output_pin_e_list -tcu_tcc_onoff_solenoid_mode = bits, U08, 3850, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_tcc_pwm_solenoid = bits, U16, 3852, [0:8], $output_pin_e_list -tcu_tcc_pwm_solenoid_mode = bits, U08, 3854, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_tcc_pwm_solenoid_freq = scalar, U16, 3856, "Hz", 1, 0, 0, 3000, 0 -tcu_pc_solenoid_pin = bits, U16, 3858, [0:8], $output_pin_e_list -tcu_pc_solenoid_pin_mode = bits, U08, 3860, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_pc_solenoid_freq = scalar, U16, 3862, "Hz", 1, 0, 0, 3000, 0 -tcu_32_solenoid_pin = bits, U16, 3864, [0:8], $output_pin_e_list -tcu_32_solenoid_pin_mode = bits, U08, 3866, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_32_solenoid_freq = scalar, U16, 3868, "Hz", 1, 0, 0, 3000, 0 -acrPin2 = bits, U16, 3870, [0:8], $output_pin_e_list -etbMinimumPosition = scalar, F32, 3872, "%", 1, 0, 0.01, 100, 2 -tuneHidingKey = scalar, U16, 3876, "", 1, 0, 0, 20000, 0 -vinNumber = string, ASCII, 3878, 17 -highSpeedOffsets = array, U16, 3896, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave -unused3124141 = scalar, F32, 3960, "", 1, 0, 0, 100, 0 -fuelPressureSensorMode = bits, U08, 3964, [0:1], "Absolute", "Gauge", "Differential", "INVALID" -luaDigitalInputPins1 = bits, U16, 3966, [0:7], $switch_input_pin_e_list -luaDigitalInputPins2 = bits, U16, 3968, [0:7], $switch_input_pin_e_list -luaDigitalInputPins3 = bits, U16, 3970, [0:7], $switch_input_pin_e_list -luaDigitalInputPins4 = bits, U16, 3972, [0:7], $switch_input_pin_e_list -luaDigitalInputPins5 = bits, U16, 3974, [0:7], $switch_input_pin_e_list -luaDigitalInputPins6 = bits, U16, 3976, [0:7], $switch_input_pin_e_list -luaDigitalInputPins7 = bits, U16, 3978, [0:7], $switch_input_pin_e_list -luaDigitalInputPins8 = bits, U16, 3980, [0:7], $switch_input_pin_e_list -tpsTspCorrValuesBins = array, U08, 3982, [4], "RPM", 50.0, 0, 0, 17500, 0 -ALSMinRPM = scalar, S16, 3986, "rpm", 1, 0, 0, 20000, 0 -ALSMaxRPM = scalar, S16, 3988, "rpm", 1, 0, 0, 20000, 0 -ALSMaxDuration = scalar, S16, 3990, "sec", 1, 0, 0, 10, 0 -ALSMinCLT = scalar, S08, 3992, "C", 1, 0, 0, 90, 0 -ALSMaxCLT = scalar, S08, 3993, "C", 1, 0, 0, 105, 0 -alsMinTimeBetween = scalar, U08, 3994, "", 1, 0, 0, 20000, 0 -alsEtbPosition = scalar, U08, 3995, "", 1, 0, 0, 20000, 0 -acRelayAlternatorDutyAdder = scalar, U08, 3996, "%", 1, 0, 0, 100, 0 -sentEtbType = bits, S08, 3997, [0:1], "None", "GM type 1", "Ford type 1", "Custom" -customSentTpsMin = scalar, U16, 3998, "", 1, 0, 0, 32000, 0 -ALSIdleAdd = scalar, S32, 4000, "%", 1, 0, 0, 100, 2 -ALSEtbAdd = scalar, S32, 4004, "%", 1, 0, 0, 100, 2 -ALSSkipRatio = scalar, F32, 4008, "", 1, 0, 0, 1, 1 -ALSMaxDriverThrottleIntent = scalar, U08, 4012, "%", 1, 0, 0, 10, 0 -ALSActivatePinMode = bits, U08, 4013, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tpsSecondaryMaximum = scalar, U08, 4014, "%", 0.5, 0, 0, 100, 1 -ppsSecondaryMaximum = scalar, U08, 4015, "%", 0.5, 0, 0, 100, 1 -luaDigitalInputPinModes1 = bits, U08, 4016, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes2 = bits, U08, 4017, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes3 = bits, U08, 4018, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes4 = bits, U08, 4019, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes5 = bits, U08, 4020, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes6 = bits, U08, 4021, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes7 = bits, U08, 4022, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes8 = bits, U08, 4023, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -customSentTpsMax = scalar, U16, 4024, "", 1, 0, 0, 32000, 0 -kLineBaudRate = scalar, U16, 4026, "", 1, 0, 0, 32000, 0 -canGpioType = bits, S08, 4028, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" -uiMode = bits, S08, 4029, [0:1], "Full", "Installation", "Tuning", "INVALID" -hpfpPeakPos = scalar, S16, 4030, "deg", 1, 0, -719, 719, 0 -kLinePeriodUs = scalar, S16, 4032, "us", 1, 0, 0, 30000, 0 -rpmSoftLimitWindowSize = scalar, U08, 4034, "RPM", 10.0, 0, 0, 2500, 0 -rpmSoftLimitTimingRetard = scalar, U08, 4035, "deg", 0.2, 0, 0, 50, 1 -rpmSoftLimitFuelAdded = scalar, U08, 4036, "%", 0.2, 0, 0, 50, 1 -rpmHardLimitHyst = scalar, U08, 4037, "RPM", 10.0, 0, 0, 2500, 0 -benchTestOffTime = scalar, U16, 4038, "ms", 0.1, 0, 0, 2000, 1 -boostCutPressureHyst = scalar, U08, 4040, "kPa (absolute)", 0.5, 0, 0, 125, 1 -gearBasedOpenLoopBoostAdder = array, S08, 4041, [10], "%", 0.5, 0, -63, 63, 1 -benchTestCount = scalar, U32, 4052, "", 1, 0, 0, 10000000, 0 -iacByTpsHoldTime = scalar, U08, 4056, "seconds", 0.1, 0, 0, 25, 1 -iacByTpsDecayTime = scalar, U08, 4057, "seconds", 0.1, 0, 0, 25, 1 -tcu_rangeInput1 = bits, U16, 4058, [0:7], $switch_input_pin_e_list -tcu_rangeInput2 = bits, U16, 4060, [0:7], $switch_input_pin_e_list -tcu_rangeInput3 = bits, U16, 4062, [0:7], $switch_input_pin_e_list -tcu_rangeInput4 = bits, U16, 4064, [0:7], $switch_input_pin_e_list -tcu_rangeInput5 = bits, U16, 4066, [0:7], $switch_input_pin_e_list -tcu_rangeInput6 = bits, U16, 4068, [0:7], $switch_input_pin_e_list -tcu_rangeInputMode1 = bits, U08, 4070, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode2 = bits, U08, 4071, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode3 = bits, U08, 4072, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode4 = bits, U08, 4073, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode5 = bits, U08, 4074, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode6 = bits, U08, 4075, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -canVssScaling = scalar, U16, 4076, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 -oilTempSensor_tempC_1 = scalar, F32, 4080, "*C", 1, 0, -55, 200, 1 -oilTempSensor_tempC_2 = scalar, F32, 4084, "*C", 1, 0, -55, 200, 1 -oilTempSensor_tempC_3 = scalar, F32, 4088, "*C", 1, 0, -55, 200, 1 -oilTempSensor_resistance_1 = scalar, F32, 4092, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_resistance_2 = scalar, F32, 4096, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_resistance_3 = scalar, F32, 4100, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_bias_resistor = scalar, F32, 4104, "Ohm", 1, 0, 0, 200000, 1 -oilTempSensor_adcChannel = bits, U08, 4108, [0:5], $adc_channel_e_list -fuelTempSensor_tempC_1 = scalar, F32, 4112, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_tempC_2 = scalar, F32, 4116, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_tempC_3 = scalar, F32, 4120, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_resistance_1 = scalar, F32, 4124, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_resistance_2 = scalar, F32, 4128, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_resistance_3 = scalar, F32, 4132, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_bias_resistor = scalar, F32, 4136, "Ohm", 1, 0, 0, 200000, 1 -fuelTempSensor_adcChannel = bits, U08, 4140, [0:5], $adc_channel_e_list -ambientTempSensor_tempC_1 = scalar, F32, 4144, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_tempC_2 = scalar, F32, 4148, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_tempC_3 = scalar, F32, 4152, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_resistance_1 = scalar, F32, 4156, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_resistance_2 = scalar, F32, 4160, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_resistance_3 = scalar, F32, 4164, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_bias_resistor = scalar, F32, 4168, "Ohm", 1, 0, 0, 200000, 1 -ambientTempSensor_adcChannel = bits, U08, 4172, [0:5], $adc_channel_e_list -compressorDischargeTemperature_tempC_1 = scalar, F32, 4176, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_tempC_2 = scalar, F32, 4180, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_tempC_3 = scalar, F32, 4184, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_resistance_1 = scalar, F32, 4188, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_resistance_2 = scalar, F32, 4192, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_resistance_3 = scalar, F32, 4196, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_bias_resistor = scalar, F32, 4200, "Ohm", 1, 0, 0, 200000, 1 -compressorDischargeTemperature_adcChannel = bits, U08, 4204, [0:5], $adc_channel_e_list -throttleInletPressureChannel = bits, U08, 4208, [0:5], $adc_channel_e_list -compressorDischargePressureChannel = bits, U08, 4209, [0:5], $adc_channel_e_list -dacOutputPins1 = bits, U16, 4210, [0:7], $gpio_list -dacOutputPins2 = bits, U16, 4212, [0:7], $gpio_list -speedometerOutputPin = bits, U16, 4214, [0:8], $output_pin_e_list -speedometerPulsePerKm = scalar, U16, 4216, "", 1, 0, 0, 65000, 0 -simulatorCamPosition1 = scalar, U08, 4218, "", 1, 0, 0, 100, 0 -simulatorCamPosition2 = scalar, U08, 4219, "", 1, 0, 0, 100, 0 -simulatorCamPosition3 = scalar, U08, 4220, "", 1, 0, 0, 100, 0 -simulatorCamPosition4 = scalar, U08, 4221, "", 1, 0, 0, 100, 0 -ignKeyAdcChannel = bits, U08, 4222, [0:5], $adc_channel_e_list -spi6MisoMode = bits, U08, 4223, [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, 4224, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom2 = scalar, F32, 4228, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom3 = scalar, F32, 4232, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom4 = scalar, F32, 4236, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo1 = scalar, F32, 4240, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo2 = scalar, F32, 4244, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo3 = scalar, F32, 4248, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo4 = scalar, F32, 4252, "ratio", 1, 0, 0, 20, 3 -tractionControlEtbDrop = array, S08, 4256, [6x6], "%", 1, 0, -100, 0, 0 -maxInjectorDutyInstant = scalar, U08, 4292, "%", 1, 0, 50, 200, 0 -maxInjectorDutySustained = scalar, U08, 4293, "%", 1, 0, 50, 120, 0 -maxInjectorDutySustainedTimeout = scalar, U08, 4294, "sec", 0.1, 0, 0, 5, 1 -injectionPinsStage21 = bits, U16, 4296, [0:8], $output_pin_e_list -injectionPinsStage22 = bits, U16, 4298, [0:8], $output_pin_e_list -injectionPinsStage23 = bits, U16, 4300, [0:8], $output_pin_e_list -injectionPinsStage24 = bits, U16, 4302, [0:8], $output_pin_e_list -injectionPinsStage25 = bits, U16, 4304, [0:8], $output_pin_e_list -injectionPinsStage26 = bits, U16, 4306, [0:8], $output_pin_e_list -injectionPinsStage27 = bits, U16, 4308, [0:8], $output_pin_e_list -injectionPinsStage28 = bits, U16, 4310, [0:8], $output_pin_e_list -injectionPinsStage29 = bits, U16, 4312, [0:8], $output_pin_e_list -injectionPinsStage210 = bits, U16, 4314, [0:8], $output_pin_e_list -injectionPinsStage211 = bits, U16, 4316, [0:8], $output_pin_e_list -injectionPinsStage212 = bits, U16, 4318, [0:8], $output_pin_e_list -tractionControlTimingDrop = array, S08, 4320, [6x6], "Deg", 1, 0, -100, 100, 0 -tractionControlIgnitionSkip = array, S08, 4356, [6x6], "%", 1, 0, 0, 100, 0 -auxSpeed1Multiplier = scalar, F32, 4392, "", 1, 0, 0, 100, 0 -brakeMeanEffectivePressureDifferential = scalar, F32, 4396, "", 1, 0, 0, 100, 0 -spi4mosiPin = bits, U16, 4400, [0:7], $gpio_list -spi4misoPin = bits, U16, 4402, [0:7], $gpio_list -spi4sckPin = bits, U16, 4404, [0:7], $gpio_list -spi5mosiPin = bits, U16, 4406, [0:7], $gpio_list -spi5misoPin = bits, U16, 4408, [0:7], $gpio_list -spi5sckPin = bits, U16, 4410, [0:7], $gpio_list -spi6mosiPin = bits, U16, 4412, [0:7], $gpio_list -spi6misoPin = bits, U16, 4414, [0:7], $gpio_list -spi6sckPin = bits, U16, 4416, [0:7], $gpio_list -spi4SckMode = bits, U08, 4418, [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, 4419, [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, 4420, [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, 4421, [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, 4422, [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, 4423, [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, 4424, [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, 4425, [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, 4426, [120], "units", 1, 0, 0, 1, 0 -etbBiasBins = array, F32, 4548, [8], "target TPS position", 1, 0, 0, 100, 0 -etbBiasValues = array, F32, 4580, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 -iacPidMultTable = array, U08, 4612, [8x8], "%", 0.05, 0, 0, 10, 2 -iacPidMultLoadBins = array, U08, 4676, [8], "Load", 1, 0, 0, 500, 2 -iacPidMultRpmBins = array, U08, 4684, [8], "RPM", 10.0, 0, 0, 2500, 0 -sparkDwellRpmBins = array, U16, 4692, [8], "RPM", 1, 0, 0, 25000, 0 -sparkDwellValues = array, U16, 4708, [8], "ms", 0.01, 0, 0, 30, 2 -cltIdleRpmBins = array, S08, 4724, [16], "C", 2.0, 0, -40, 200, 0 -cltIdleRpm = array, U08, 4740, [16], "RPM", 20.0, 0, 0, 5000, 0 -cltTimingBins = array, F32, 4756, [8], "C", 1, 0, -100, 250, 1 -cltTimingExtra = array, F32, 4788, [8], "degree", 1, 0, -400, 400, 0 -scriptCurve1Bins = array, F32, 4820, [16], "x", 1, 0, -10000, 10000, 3 -scriptCurve1 = array, F32, 4884, [16], "y", 1, 0, -10000, 10000, 3 -scriptCurve2Bins = array, F32, 4948, [16], "x", 1, 0, -10000, 10000, 3 -scriptCurve2 = array, F32, 5012, [16], "y", 1, 0, -10000, 10000, 3 -scriptCurve3Bins = array, F32, 5076, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve3 = array, F32, 5108, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve4Bins = array, F32, 5140, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve4 = array, F32, 5172, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve5Bins = array, F32, 5204, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve5 = array, F32, 5236, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve6Bins = array, F32, 5268, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve6 = array, F32, 5300, [8], "y", 1, 0, -10000, 10000, 3 -baroCorrPressureBins = array, F32, 5332, [4], "kPa", 1, 0, 0, 200, 2 -baroCorrRpmBins = array, F32, 5348, [4], "RPM", 1, 0, 0, 18000, 0 -baroCorrTable = array, F32, 5364, [4x4], "ratio", 1, 0, 0, 2, 2 -crankingTpsCoef = array, F32, 5428, [8], "Ratio", 1, 0, 0, 700, 2 -crankingTpsBins = array, F32, 5460, [8], "%", 1, 0, 0, 100, 2 -crankingAdvanceBins = array, U16, 5492, [4], "RPM", 1, 0, 0, 25000, 0 -crankingAdvance = array, S16, 5500, [4], "deg", 0.01, 0, -20, 90, 2 -iacCoastingRpmBins = array, U08, 5508, [16], "RPM", 100.0, 0, 0, 25000, 0 -iacCoasting = array, U08, 5524, [16], "%", 0.5, 0, 0, 100, 1 -warning_message = string, ASCII, 5540, 120 -fancyOptions1 = scalar, U08, 5660, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5661, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5662, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5663, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5664, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5665, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5666, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5667, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5668, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5669, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5670, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5671, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5672, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5673, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5674, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5675, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5676, [112], "", 1, 0, 0, 100, 0 -boostTableOpenLoop = array, U08, 5788, [4x8], "", 0.5, 0, 0, 100, 1 -boostRpmBins = array, U08, 5820, [4], "RPM", 100.0, 0, 0, 25000, 0 -boostTableClosedLoop = array, U08, 5824, [4x8], "", 2.0, 0, 0, 3000, 0 -boostTpsBins = array, U08, 5856, [8], "%", 1, 0, 0, 100, 0 -pedalToTpsTable = array, U08, 5864, [8x8], "%", 1, 0, 0, 100, 0 -pedalToTpsPedalBins = array, U08, 5928, [8], "%", 1, 0, 0, 120, 0 -pedalToTpsRpmBins = array, U08, 5936, [8], "RPM", 100.0, 0, 0, 25000, 0 -cltCrankingCorrBins = array, F32, 5944, [8], "C", 1, 0, -100, 250, 2 -cltCrankingCorr = array, F32, 5976, [8], "%", 1, 0, 0, 500, 2 -idleAdvanceBins = array, U08, 6008, [8], "RPM", 50.0, 0, 0, 12000, 0 -idleAdvance = array, F32, 6016, [8], "deg", 1, 0, -20, 90, 1 -idleVeRpmBins = array, U08, 6048, [4], "RPM", 10.0, 0, 0, 2500, 0 -idleVeLoadBins = array, U08, 6052, [4], "load", 1, 0, 0, 100, 0 -idleVeTable = array, U16, 6056, [4x4], "%", 0.1, 0, 0, 999, 1 -luaScript = string, ASCII, 6088, 8000 -cltFuelCorrBins = array, F32, 14088, [16], "C", 1, 0, -100, 250, 2 -cltFuelCorr = array, F32, 14152, [16], "ratio", 1, 0, 0, 5, 2 -iatFuelCorrBins = array, F32, 14216, [16], "C", 1, 0, -100, 250, 2 -iatFuelCorr = array, F32, 14280, [16], "ratio", 1, 0, 0, 5, 2 -crankingFuelCoef = array, F32, 14344, [8], "ratio", 1, 0, 0, 50, 2 -crankingFuelBins = array, F32, 14376, [8], "C", 1, 0, -80, 170, 2 -crankingCycleCoef = array, F32, 14408, [8], "ratio", 1, 0, 0, 5, 2 -crankingCycleBins = array, F32, 14440, [8], "counter", 1, 0, -80, 170, 0 -cltIdleCorrBins = array, F32, 14472, [16], "C", 1, 0, -100, 250, 2 -cltIdleCorr = array, F32, 14536, [16], "ratio", 1, 0, 0, 10, 2 -mafDecoding = array, F32, 14600, [32], "kg/hour", 1, 0, -500, 4000, 2 -mafDecodingBins = array, F32, 14728, [32], "V", 1, 0, -5, 150, 2 -ignitionIatCorrTable = array, S08, 14856, [8x8], "deg", 0.1, 0, -25, 25, 1 -ignitionIatCorrTempBins = array, S08, 14920, [8], "C", 1, 0, -40, 120, 0 -ignitionIatCorrLoadBins = array, U08, 14928, [8], "Load", 5.0, 0, 0, 1000, 0 -injectionPhase = array, S16, 14936, [16x16], "deg", 1, 0, -720, 720, 0 -injPhaseLoadBins = array, U16, 15448, [16], "Load", 1, 0, 0, 1000, 0 -injPhaseRpmBins = array, U16, 15480, [16], "RPM", 1, 0, 0, 18000, 0 -tcuSolenoidTable = array, U08, 15512, [10x6], "onoff", 1, 0, 0, 1, 0 -mapEstimateTable = array, U16, 15572, [16x16], "kPa", 0.01, 0, 0, 600, 2 -mapEstimateTpsBins = array, U16, 16084, [16], "% TPS", 0.01, 0, 0, 100, 1 -mapEstimateRpmBins = array, U16, 16116, [16], "RPM", 1, 0, 0, 18000, 0 -vvtTable1 = array, S08, 16148, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable1LoadBins = array, U16, 16212, [8], "L", 1, 0, 0, 1000, 0 -vvtTable1RpmBins = array, U16, 16228, [8], "RPM", 1, 0, 0, 18000, 0 -vvtTable2 = array, S08, 16244, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable2LoadBins = array, U16, 16308, [8], "L", 1, 0, 0, 1000, 0 -vvtTable2RpmBins = array, U16, 16324, [8], "RPM", 1, 0, 0, 18000, 0 -ignitionTable = array, S16, 16340, [8x16], "deg", 0.1, 0, -20, 90, 1 -ignitionLoadBins = array, U16, 16596, [16], "Load", 1, 0, 0, 1000, 0 -ignitionRpmBins = array, U16, 16628, [8], "RPM", 1, 0, 0, 18000, 0 -veTable = array, U16, 16644, [16x16], "%", 0.1, 0, 0, 999, 1 -veLoadBins = array, U16, 17156, [16], "kPa", 1, 0, 0, 1000, 0 -veRpmBins = array, U16, 17188, [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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [4], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2690, [4x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2724, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2726, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2728, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2730, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2731, "%", 1, 0, 0, 100, 0 +gppwm2_loadAxis = bits, U08, 2732, [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, 2733, [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, 2734, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2750, [4], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2758, [4x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2792, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2794, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2796, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2798, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2799, "%", 1, 0, 0, 100, 0 +gppwm3_loadAxis = bits, U08, 2800, [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, 2801, [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, 2802, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2818, [4], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2826, [4x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2860, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2862, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2864, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2866, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2867, "%", 1, 0, 0, 100, 0 +gppwm4_loadAxis = bits, U08, 2868, [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, 2869, [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, 2870, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 2886, [4], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 2894, [4x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 2928, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 2930, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 2932, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 2934, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 2936, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 2938, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 2940, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 2942, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 2944, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 2946, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 2947, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 2948, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 2949, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 2950, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 2951, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 2952, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 2953, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 2954, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 2956, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 2960, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 2964, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 2968, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 2972, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 2976, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 2980, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 2984, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 2988, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 2992, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 2996, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3000, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3004, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3008, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3012, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3016, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3020, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3024, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3028, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3032, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3036, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3040, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3044, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3048, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3052, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3056, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3060, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3064, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3068, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3072, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3076, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3080, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3084, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3088, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3092, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3096, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3100, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3101, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3102, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3103, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3104, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3106, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3107, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3108, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3109, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3110, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3112, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3114, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3115, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3116, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3118, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3120, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3122, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3124, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3126, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3128, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3130, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3132, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3134, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3136, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3138, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3140, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3142, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3144, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3146, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3148, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3150, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3152, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3188, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3200, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3212, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3213, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3214, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3216, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3220, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3224, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3228, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3232, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3236, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3240, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3244, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3248, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3252, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3256, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3258, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3260, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3262, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3264, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3266, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3268, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3270, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3272, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3274, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3276, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3278, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3280, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3284, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3286, 17 +highSpeedOffsets = array, U16, 3304, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3368, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3370, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3372, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3374, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3376, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3378, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3380, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3382, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3384, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3386, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3388, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3390, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3392, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3393, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3394, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3395, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3396, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3397, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3398, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3400, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3404, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3408, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3412, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3413, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3414, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3415, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3416, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3417, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3418, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3419, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3420, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3421, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3422, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3423, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3424, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3426, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3428, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3429, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3430, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3432, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3434, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3435, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3436, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3437, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3438, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3440, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3441, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3452, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3456, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3457, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3458, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3460, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3462, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3464, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3466, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3468, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3470, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3471, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3472, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3473, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3474, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3475, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3476, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3480, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3484, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3488, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3492, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3496, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3500, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3504, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3508, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3512, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3516, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3520, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3524, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3528, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3532, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3536, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3540, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3544, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3548, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3552, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3556, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3560, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3564, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3568, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3572, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3576, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3580, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3584, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3588, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3592, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3596, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3600, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3604, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3608, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3609, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3610, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3612, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3614, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3616, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3618, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3619, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3620, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3621, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3622, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3623, [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, 3624, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3628, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3632, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3636, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3640, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3644, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3648, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3652, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3656, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3692, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3693, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3694, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3696, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3698, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3700, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3702, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3704, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3706, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3708, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3710, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3712, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3714, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3716, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3718, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3720, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3756, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3792, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3796, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3800, [0:7], $gpio_list +spi4misoPin = bits, U16, 3802, [0:7], $gpio_list +spi4sckPin = bits, U16, 3804, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3806, [0:7], $gpio_list +spi5misoPin = bits, U16, 3808, [0:7], $gpio_list +spi5sckPin = bits, U16, 3810, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3812, [0:7], $gpio_list +spi6misoPin = bits, U16, 3814, [0:7], $gpio_list +spi6sckPin = bits, U16, 3816, [0:7], $gpio_list +spi4SckMode = bits, U08, 3818, [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, 3819, [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, 3820, [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, 3821, [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, 3822, [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, 3823, [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, 3824, [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, 3825, [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, 3826, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4068, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4100, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4132, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4196, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4204, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4212, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4228, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4244, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4260, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4276, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4308, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4340, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4404, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4468, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4532, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4596, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4628, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4660, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4692, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4724, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4756, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4788, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4820, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 4852, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 4868, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 4884, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 4948, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 4980, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5012, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5020, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5028, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5044, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5060, 120 +fancyOptions1 = scalar, U08, 5180, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5181, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5182, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5183, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5184, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5185, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5186, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5187, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5188, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5189, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5190, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5191, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5192, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5193, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5194, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5195, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5196, [4x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5228, [4], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5232, [4x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5264, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5272, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5336, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5344, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5352, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5384, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5416, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5424, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5456, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5460, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5464, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5496, 8000 +cltFuelCorrBins = array, F32, 13496, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13560, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13624, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13688, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13752, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 13784, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 13816, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 13848, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 13880, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 13944, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14008, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14136, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14264, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14328, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14336, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14344, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 14856, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 14888, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 14920, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 14980, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15492, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15524, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15556, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15620, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15636, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15652, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15716, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15732, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15748, [8x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16004, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16036, [8], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16052, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 16564, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 16596, [16], "RPM", 1, 0, 0, 18000, 0 #if LAMBDA -lambdaTable = array, U08, 17220, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 +lambdaTable = array, U08, 16628, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 #else -lambdaTable = array, U08, 17220, [16x16], "afr", 0.1, 0, 0, 25, 1 +lambdaTable = array, U08, 16628, [16x16], "afr", 0.1, 0, 0, 25, 1 #endif -lambdaLoadBins = array, U16, 17476, [16], "", 1, 0, 0, 1000, 0 -lambdaRpmBins = array, U16, 17508, [16], "RPM", 1, 0, 0, 18000, 0 -tpsTpsAccelTable = array, F32, 17540, [8x8], "value", 1, 0, 0, 30000, 2 -tpsTpsAccelFromRpmBins = array, F32, 17796, [8], "from", 1, 0, 0, 30000, 2 -tpsTpsAccelToRpmBins = array, F32, 17828, [8], "to", 1, 0, 0, 25500, 2 -scriptTable1 = array, F32, 17860, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable1LoadBins = array, S16, 18116, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable1RpmBins = array, S16, 18132, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable2 = array, F32, 18148, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable2LoadBins = array, S16, 18404, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable2RpmBins = array, S16, 18420, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable3 = array, U08, 18436, [8x8], "value", 1, 0, 0, 255, 0 -scriptTable3LoadBins = array, S16, 18500, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable3RpmBins = array, S16, 18516, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable4 = array, U08, 18532, [10x8], "value", 1, 0, 0, 255, 0 -scriptTable4LoadBins = array, S16, 18612, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable4RpmBins = array, S16, 18628, [10], "RPM", 1, 0, -32000, 32000, 0 -ignTrimLoadBins = array, U16, 18648, [4], "", 1, 0, 0, 1000, 0 -ignTrimRpmBins = array, U16, 18656, [4], "rpm", 1, 0, 0, 20000, 0 -ignTrims1_table = array, S08, 18664, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims2_table = array, S08, 18680, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims3_table = array, S08, 18696, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims4_table = array, S08, 18712, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims5_table = array, S08, 18728, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims6_table = array, S08, 18744, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims7_table = array, S08, 18760, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims8_table = array, S08, 18776, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims9_table = array, S08, 18792, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims10_table = array, S08, 18808, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims11_table = array, S08, 18824, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims12_table = array, S08, 18840, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrimLoadBins = array, U16, 18856, [4], "", 1, 0, 0, 1000, 0 -fuelTrimRpmBins = array, U16, 18864, [4], "rpm", 1, 0, 0, 20000, 0 -fuelTrims1_table = array, S08, 18872, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims2_table = array, S08, 18888, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims3_table = array, S08, 18904, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims4_table = array, S08, 18920, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims5_table = array, S08, 18936, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims6_table = array, S08, 18952, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims7_table = array, S08, 18968, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims8_table = array, S08, 18984, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims9_table = array, S08, 19000, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims10_table = array, S08, 19016, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims11_table = array, S08, 19032, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims12_table = array, S08, 19048, [4x4], "", 0.2, 0, -25, 25, 1 -crankingFuelCoefE100 = array, U16, 19064, [8], "ratio", 0.01, 0, 0, 50, 2 -tcu_pcAirmassBins = array, U08, 19080, [8], "Airmass", 0.02, 0, 0, 255, 2 -tcu_pcValsR = array, U08, 19088, [8], "%", 1, 0, 0, 255, 0 -tcu_pcValsN = array, U08, 19096, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals1 = array, U08, 19104, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals2 = array, U08, 19112, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals3 = array, U08, 19120, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals4 = array, U08, 19128, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals12 = array, U08, 19136, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals23 = array, U08, 19144, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals34 = array, U08, 19152, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals21 = array, U08, 19160, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals32 = array, U08, 19168, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals43 = array, U08, 19176, [8], "%", 1, 0, 0, 255, 0 -tcu_tccTpsBins = array, U08, 19184, [8], "TPS", 1, 0, 0, 255, 0 -tcu_tccLockSpeed = array, U08, 19192, [8], "MPH", 1, 0, 0, 255, 0 -tcu_tccUnlockSpeed = array, U08, 19200, [8], "MPH", 1, 0, 0, 255, 0 -tcu_32SpeedBins = array, U08, 19208, [8], "KPH", 1, 0, 0, 255, 0 -tcu_32Vals = array, U08, 19216, [8], "%", 1, 0, 0, 255, 0 -throttle2TrimTable = array, S08, 19224, [6x6], "%", 0.1, 0, -10, 10, 1 -throttle2TrimTpsBins = array, U08, 19260, [6], "%", 1, 0, 0, 120, 0 -throttle2TrimRpmBins = array, U08, 19266, [6], "RPM", 100.0, 0, 0, 25000, 0 -maxKnockRetardTable = array, U08, 19272, [6x6], "deg", 0.25, 0, 0, 30, 2 -maxKnockRetardLoadBins = array, U08, 19308, [6], "%", 1, 0, 0, 250, 0 -maxKnockRetardRpmBins = array, U08, 19314, [6], "RPM", 100.0, 0, 0, 25000, 0 -ALSTimingRetardTable = array, S16, 19320, [4x4], "deg", 0.1, 0, -60, 0, 1 -alsIgnRetardLoadBins = array, U16, 19352, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnRetardrpmBins = array, U16, 19360, [4], "RPM", 1, 0, 0, 25000, 0 -ALSFuelAdjustment = array, S16, 19368, [4x4], "percent", 0.1, 0, 0, 50, 1 -alsFuelAdjustmentLoadBins = array, U16, 19400, [4], "TPS", 1, 0, 0, 100, 0 -alsFuelAdjustmentrpmBins = array, U16, 19408, [4], "RPM", 1, 0, 0, 25000, 0 -ALSIgnSkipTable = array, S16, 19416, [4x4], "ratio", 10.0, 0, 0, 50, 1 -alsIgnSkipLoadBins = array, U16, 19448, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnSkiprpmBins = array, U16, 19456, [4], "RPM", 1, 0, 0, 25000, 0 -ignBlends1_table = array, S16, 19464, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends1_loadBins = array, U16, 19592, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends1_rpmBins = array, U16, 19608, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends1_blendParameter = bits, U08, 19624, [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, 19625, [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, 19626, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends1_blendValues = array, U08, 19642, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends2_table = array, S16, 19652, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends2_loadBins = array, U16, 19780, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends2_rpmBins = array, U16, 19796, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends2_blendParameter = bits, U08, 19812, [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, 19813, [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, 19814, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends2_blendValues = array, U08, 19830, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends3_table = array, S16, 19840, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends3_loadBins = array, U16, 19968, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends3_rpmBins = array, U16, 19984, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends3_blendParameter = bits, U08, 20000, [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, 20001, [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, 20002, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends3_blendValues = array, U08, 20018, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends4_table = array, S16, 20028, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends4_loadBins = array, U16, 20156, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends4_rpmBins = array, U16, 20172, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends4_blendParameter = bits, U08, 20188, [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, 20189, [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, 20190, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends4_blendValues = array, U08, 20206, [8], "%", 0.5, 0, 0, 100, 1 -veBlends1_table = array, S16, 20216, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends1_loadBins = array, U16, 20344, [8], "Load", 1, 0, 0, 1000, 0 -veBlends1_rpmBins = array, U16, 20360, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends1_blendParameter = bits, U08, 20376, [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, 20377, [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, 20378, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends1_blendValues = array, U08, 20394, [8], "%", 0.5, 0, 0, 100, 1 -veBlends2_table = array, S16, 20404, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends2_loadBins = array, U16, 20532, [8], "Load", 1, 0, 0, 1000, 0 -veBlends2_rpmBins = array, U16, 20548, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends2_blendParameter = bits, U08, 20564, [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, 20565, [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, 20566, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends2_blendValues = array, U08, 20582, [8], "%", 0.5, 0, 0, 100, 1 -veBlends3_table = array, S16, 20592, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends3_loadBins = array, U16, 20720, [8], "Load", 1, 0, 0, 1000, 0 -veBlends3_rpmBins = array, U16, 20736, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends3_blendParameter = bits, U08, 20752, [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, 20753, [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, 20754, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends3_blendValues = array, U08, 20770, [8], "%", 0.5, 0, 0, 100, 1 -veBlends4_table = array, S16, 20780, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends4_loadBins = array, U16, 20908, [8], "Load", 1, 0, 0, 1000, 0 -veBlends4_rpmBins = array, U16, 20924, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends4_blendParameter = bits, U08, 20940, [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, 20941, [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, 20942, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends4_blendValues = array, U08, 20958, [8], "%", 0.5, 0, 0, 100, 1 -throttleEstimateEffectiveAreaBins = array, U16, 20968, [12], "%", 0.1, 0, 0, 100, 1 -throttleEstimateEffectiveAreaValues = array, U16, 20992, [12], "g/s", 0.1, 0, 0, 6500, 1 -boostOpenLoopBlends1_table = array, S16, 21016, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends1_loadBins = array, U16, 21144, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends1_rpmBins = array, U16, 21160, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends1_blendParameter = bits, U08, 21176, [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, 21177, [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, 21178, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends1_blendValues = array, U08, 21194, [8], "%", 0.5, 0, 0, 100, 1 -boostOpenLoopBlends2_table = array, S16, 21204, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends2_loadBins = array, U16, 21332, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends2_rpmBins = array, U16, 21348, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends2_blendParameter = bits, U08, 21364, [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, 21365, [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, 21366, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends2_blendValues = array, U08, 21382, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends1_table = array, S16, 21392, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends1_loadBins = array, U16, 21520, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends1_rpmBins = array, U16, 21536, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends1_blendParameter = bits, U08, 21552, [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, 21553, [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, 21554, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends1_blendValues = array, U08, 21570, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends2_table = array, S16, 21580, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends2_loadBins = array, U16, 21708, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends2_rpmBins = array, U16, 21724, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends2_blendParameter = bits, U08, 21740, [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, 21741, [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, 21742, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends2_blendValues = array, U08, 21758, [8], "%", 0.5, 0, 0, 100, 1 -tcu_rangeP = array, U08, 21768, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeR = array, U08, 21774, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeN = array, U08, 21780, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeD = array, U08, 21786, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM = array, U08, 21792, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM3 = array, U08, 21798, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM2 = array, U08, 21804, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM1 = array, U08, 21810, [6], "level", 1, 0, 0, 3, 0 -tcu_rangePlus = array, U08, 21816, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeMinus = array, U08, 21822, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeLow = array, U08, 21828, [6], "level", 1, 0, 0, 3, 0 -lambdaMaxDeviationTable = array, U08, 21834, [4x4], "lambda", 0.01, 0, 0, 1, 2 -lambdaMaxDeviationLoadBins = array, U16, 21850, [4], "", 1, 0, 0, 1000, 0 -lambdaMaxDeviationRpmBins = array, U16, 21858, [4], "RPM", 1, 0, 0, 18000, 0 -injectorStagingTable = array, U08, 21866, [6x6], "%", 1, 0, 0, 90, 0 -injectorStagingLoadBins = array, U16, 21902, [6], "", 1, 0, 0, 1000, 0 -injectorStagingRpmBins = array, U16, 21914, [6], "RPM", 1, 0, 0, 18000, 0 -; total TS size = 21928 +lambdaLoadBins = array, U16, 16884, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 16916, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 16948, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17204, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17236, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17268, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 17524, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 17540, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 17556, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 17812, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 17828, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 17844, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 17908, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 17924, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 17940, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18020, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18036, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18056, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18064, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18072, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18088, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18104, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18120, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18136, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18152, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18168, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18184, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18200, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18216, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18232, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18248, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18264, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18272, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18280, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18296, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18312, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18328, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18344, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18360, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18376, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18392, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18408, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18424, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18440, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18456, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18472, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18488, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18496, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 18504, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 18512, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 18520, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 18528, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 18536, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 18544, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 18552, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 18560, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 18568, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 18576, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 18584, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 18592, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 18600, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 18608, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 18616, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 18624, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 18632, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 18668, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 18674, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 18680, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 18716, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 18722, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 18728, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 18760, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 18768, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 18776, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 18808, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 18816, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 18824, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 18856, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 18864, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 18872, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19000, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19016, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19032, [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, 19033, [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, 19034, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19050, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19060, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19188, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19204, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19220, [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, 19221, [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, 19222, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19238, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19248, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19376, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19392, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19408, [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, 19409, [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, 19410, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19426, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19436, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 19564, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 19580, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 19596, [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, 19597, [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, 19598, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 19614, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 19624, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 19752, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 19768, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 19784, [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, 19785, [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, 19786, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 19802, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 19812, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 19940, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 19956, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 19972, [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, 19973, [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, 19974, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 19990, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20000, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20128, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20144, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20160, [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, 20161, [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, 20162, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20178, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20188, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20316, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20332, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20348, [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, 20349, [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, 20350, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20366, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20376, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20400, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20424, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 20552, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 20568, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 20584, [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, 20585, [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, 20586, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 20602, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 20612, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 20740, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 20756, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 20772, [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, 20773, [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, 20774, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 20790, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 20800, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 20928, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 20944, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 20960, [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, 20961, [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, 20962, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 20978, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 20988, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21116, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21132, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21148, [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, 21149, [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, 21150, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21166, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21176, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21182, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21188, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21194, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21200, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21206, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21212, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21218, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21224, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21230, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21236, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21242, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21258, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21266, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21274, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21310, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21322, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21334, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21342, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21350, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21358, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21366, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21374, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21382, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21398, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21414, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21422, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21438, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 21638, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 21658, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 21668, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 21768, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 21788, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 21798, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 21830, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 21846, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 21850, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 21854, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 21858, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 21866, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 21882, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 21890, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 21898, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 21908 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,6 +1666,17 @@ injectorStagingRpmBins = array, U16, 21914, [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" @@ -1729,6 +1735,7 @@ injectorStagingRpmBins = array, U16, 21914, [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." @@ -1736,7 +1743,6 @@ injectorStagingRpmBins = array, U16, 21914, [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." @@ -1756,12 +1762,11 @@ injectorStagingRpmBins = array, U16, 21914, [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" @@ -1806,16 +1811,8 @@ injectorStagingRpmBins = array, U16, 21914, [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" @@ -2137,8 +2134,6 @@ injectorStagingRpmBins = array, U16, 21914, [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." @@ -2238,7 +2233,6 @@ injectorStagingRpmBins = array, U16, 21914, [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" @@ -2414,6 +2408,7 @@ injectorStagingRpmBins = array, U16, 21914, [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 diff --git a/firmware/tunerstudio/generated/rusefi_f407-discovery.ini b/firmware/tunerstudio/generated/rusefi_f407-discovery.ini index 43378d1c7c..7e77d15c25 100644 --- a/firmware/tunerstudio/generated/rusefi_f407-discovery.ini +++ b/firmware/tunerstudio/generated/rusefi_f407-discovery.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.f407-discovery.1370112519" + signature = "rusEFI master.2024.03.20.f407-discovery.495860111" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.f407-discovery.1370112519" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.f407-discovery.495860111" ; 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 Wed Mar 20 15:36:15 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:44 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_f429-discovery.ini b/firmware/tunerstudio/generated/rusefi_f429-discovery.ini index e7317b3fc0..c9b788720f 100644 --- a/firmware/tunerstudio/generated/rusefi_f429-discovery.ini +++ b/firmware/tunerstudio/generated/rusefi_f429-discovery.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.f429-discovery.4126914918" + signature = "rusEFI master.2024.03.20.f429-discovery.3118449390" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.f429-discovery.4126914918" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.f429-discovery.3118449390" ; 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 Wed Mar 20 15:36:01 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:30 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_f469-discovery.ini b/firmware/tunerstudio/generated/rusefi_f469-discovery.ini index 7664769ec8..302b1e7062 100644 --- a/firmware/tunerstudio/generated/rusefi_f469-discovery.ini +++ b/firmware/tunerstudio/generated/rusefi_f469-discovery.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.f469-discovery.3341598709" + signature = "rusEFI master.2024.03.20.f469-discovery.2332607613" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.f469-discovery.3341598709" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.f469-discovery.2332607613" ; 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 Wed Mar 20 15:36:02 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:32 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini b/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini index 4e4b38b4fd..2de4ea4c28 100644 --- a/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini +++ b/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.frankenso_na6.2742603133" + signature = "rusEFI master.2024.03.20.frankenso_na6.4015830773" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.frankenso_na6.2742603133" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.frankenso_na6.4015830773" ; 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="NONE","Analog 3O","Analog 3L","Analog 3M","Analog 3J","Analog 3I","INVALID","Analog 3H","Analog 3G","INVALID","INVALID","INVALID","Analog 3P","Analog 3Q","Analog 3N","Analog VBatt","Analog 3E" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:58 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:27 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_haba208.ini b/firmware/tunerstudio/generated/rusefi_haba208.ini index bbe9b6bee8..bdee6104d1 100644 --- a/firmware/tunerstudio/generated/rusefi_haba208.ini +++ b/firmware/tunerstudio/generated/rusefi_haba208.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.haba208.4126914918" + signature = "rusEFI master.2024.03.20.haba208.3118449390" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.haba208.4126914918" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.haba208.3118449390" ; 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 Wed Mar 20 15:35:37 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:06 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen-112-17.ini b/firmware/tunerstudio/generated/rusefi_hellen-112-17.ini index ed882fd535..51686a61f5 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen-112-17.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen-112-17.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen-112-17.2096308706" + signature = "rusEFI master.2024.03.20.hellen-112-17.819419754" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen-112-17.2096308706" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen-112-17.819419754" ; 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="NONE","B20 TPS Throttle Position 2","A14 Analog Input","INVALID","A21 PPS1","B03 TPS Throttle Position 1","INVALID","A07 TODO","A12 Analog Input","A10 Analog Input","INVALID","B19 MAP","A09 Analog Input","B15 CLT","B27 IAT","A11 Analog Input","A19 Analog Input" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:09 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:39 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen-gm-e67.ini b/firmware/tunerstudio/generated/rusefi_hellen-gm-e67.ini index 101782d32f..7eb17d8b0a 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen-gm-e67.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen-gm-e67.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen-gm-e67.964878046" + signature = "rusEFI master.2024.03.20.hellen-gm-e67.1973855574" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen-gm-e67.964878046" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen-gm-e67.1973855574" ; 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="NONE","INVALID","C2-60 - Oil Pressure","C3-58 - Baro","C1-47 - PPS1","C2-64 - TPS1","C1-19 Battery Sense","C1-45 Secondary Fuel Level","C3-57 - A/C Pressure","C2-66 - TPS2","C1-44 Primary Fuel Level","C2-65 - Trans Fluids","C3-59 - MAP","C3-55 - CLT","C3-56 - IAT","C1-49 - PPS2","C1-46 Vac Sense" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:14 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:44 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen-honda-k.ini b/firmware/tunerstudio/generated/rusefi_hellen-honda-k.ini index cdf381216e..fc65512dc3 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen-honda-k.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen-honda-k.ini @@ -4,12 +4,12 @@ enable2ndByteCanID = false [SettingGroups] [MegaTune] - signature = "rusEFI master.2024.03.20.hellen-honda-k.3238994525" + signature = "rusEFI master.2024.03.20.hellen-honda-k.2368428501" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen-honda-k.3238994525" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen-honda-k.2368428501" ; signature is expected to be 7 or more characters. useLegacyFTempUnits = false ignoreMissingBitOptions = true @@ -51,7 +51,7 @@ enable2ndByteCanID = false #define adc_channel_e_list="NONE","INVALID","INVALID","INVALID","INVALID","A15 TPS","E9 Ignition Key Voltage","INVALID","Aux Analog 3","Aux Analog 1","INVALID","A19 - MAP","INVALID","B8 - CLT","B17 IAT","Aux Analog 2" ; CONFIG_DEFINITION_START -pageSize = 23100 +pageSize = 23080 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 @@ -63,9 +63,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 @@ -144,6 +160,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" @@ -157,8 +174,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 @@ -167,1449 +186,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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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, [24x24], "deg", 0.1, 0, -20, 90, 1 -ignitionLoadBins = array, U16, 17720, [24], "Load", 1, 0, 0, 1000, 0 -ignitionRpmBins = array, U16, 17768, [24], "RPM", 1, 0, 0, 18000, 0 -veTable = array, U16, 17816, [16x16], "%", 0.1, 0, 0, 999, 1 -veLoadBins = array, U16, 18328, [16], "kPa", 1, 0, 0, 1000, 0 -veRpmBins = array, U16, 18360, [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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [24x24], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 17128, [24], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 17176, [24], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 17224, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17736, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17768, [16], "RPM", 1, 0, 0, 18000, 0 #if LAMBDA -lambdaTable = array, U08, 18392, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 +lambdaTable = array, U08, 17800, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 #else -lambdaTable = array, U08, 18392, [16x16], "afr", 0.1, 0, 0, 25, 1 +lambdaTable = array, U08, 17800, [16x16], "afr", 0.1, 0, 0, 25, 1 #endif -lambdaLoadBins = array, U16, 18648, [16], "", 1, 0, 0, 1000, 0 -lambdaRpmBins = array, U16, 18680, [16], "RPM", 1, 0, 0, 18000, 0 -tpsTpsAccelTable = array, F32, 18712, [8x8], "value", 1, 0, 0, 30000, 2 -tpsTpsAccelFromRpmBins = array, F32, 18968, [8], "from", 1, 0, 0, 30000, 2 -tpsTpsAccelToRpmBins = array, F32, 19000, [8], "to", 1, 0, 0, 25500, 2 -scriptTable1 = array, F32, 19032, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable1LoadBins = array, S16, 19288, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable1RpmBins = array, S16, 19304, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable2 = array, F32, 19320, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable2LoadBins = array, S16, 19576, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable2RpmBins = array, S16, 19592, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable3 = array, U08, 19608, [8x8], "value", 1, 0, 0, 255, 0 -scriptTable3LoadBins = array, S16, 19672, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable3RpmBins = array, S16, 19688, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable4 = array, U08, 19704, [10x8], "value", 1, 0, 0, 255, 0 -scriptTable4LoadBins = array, S16, 19784, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable4RpmBins = array, S16, 19800, [10], "RPM", 1, 0, -32000, 32000, 0 -ignTrimLoadBins = array, U16, 19820, [4], "", 1, 0, 0, 1000, 0 -ignTrimRpmBins = array, U16, 19828, [4], "rpm", 1, 0, 0, 20000, 0 -ignTrims1_table = array, S08, 19836, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims2_table = array, S08, 19852, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims3_table = array, S08, 19868, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims4_table = array, S08, 19884, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims5_table = array, S08, 19900, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims6_table = array, S08, 19916, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims7_table = array, S08, 19932, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims8_table = array, S08, 19948, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims9_table = array, S08, 19964, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims10_table = array, S08, 19980, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims11_table = array, S08, 19996, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims12_table = array, S08, 20012, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrimLoadBins = array, U16, 20028, [4], "", 1, 0, 0, 1000, 0 -fuelTrimRpmBins = array, U16, 20036, [4], "rpm", 1, 0, 0, 20000, 0 -fuelTrims1_table = array, S08, 20044, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims2_table = array, S08, 20060, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims3_table = array, S08, 20076, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims4_table = array, S08, 20092, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims5_table = array, S08, 20108, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims6_table = array, S08, 20124, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims7_table = array, S08, 20140, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims8_table = array, S08, 20156, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims9_table = array, S08, 20172, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims10_table = array, S08, 20188, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims11_table = array, S08, 20204, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims12_table = array, S08, 20220, [4x4], "", 0.2, 0, -25, 25, 1 -crankingFuelCoefE100 = array, U16, 20236, [8], "ratio", 0.01, 0, 0, 50, 2 -tcu_pcAirmassBins = array, U08, 20252, [8], "Airmass", 0.02, 0, 0, 255, 2 -tcu_pcValsR = array, U08, 20260, [8], "%", 1, 0, 0, 255, 0 -tcu_pcValsN = array, U08, 20268, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals1 = array, U08, 20276, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals2 = array, U08, 20284, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals3 = array, U08, 20292, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals4 = array, U08, 20300, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals12 = array, U08, 20308, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals23 = array, U08, 20316, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals34 = array, U08, 20324, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals21 = array, U08, 20332, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals32 = array, U08, 20340, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals43 = array, U08, 20348, [8], "%", 1, 0, 0, 255, 0 -tcu_tccTpsBins = array, U08, 20356, [8], "TPS", 1, 0, 0, 255, 0 -tcu_tccLockSpeed = array, U08, 20364, [8], "MPH", 1, 0, 0, 255, 0 -tcu_tccUnlockSpeed = array, U08, 20372, [8], "MPH", 1, 0, 0, 255, 0 -tcu_32SpeedBins = array, U08, 20380, [8], "KPH", 1, 0, 0, 255, 0 -tcu_32Vals = array, U08, 20388, [8], "%", 1, 0, 0, 255, 0 -throttle2TrimTable = array, S08, 20396, [6x6], "%", 0.1, 0, -10, 10, 1 -throttle2TrimTpsBins = array, U08, 20432, [6], "%", 1, 0, 0, 120, 0 -throttle2TrimRpmBins = array, U08, 20438, [6], "RPM", 100.0, 0, 0, 25000, 0 -maxKnockRetardTable = array, U08, 20444, [6x6], "deg", 0.25, 0, 0, 30, 2 -maxKnockRetardLoadBins = array, U08, 20480, [6], "%", 1, 0, 0, 250, 0 -maxKnockRetardRpmBins = array, U08, 20486, [6], "RPM", 100.0, 0, 0, 25000, 0 -ALSTimingRetardTable = array, S16, 20492, [4x4], "deg", 0.1, 0, -60, 0, 1 -alsIgnRetardLoadBins = array, U16, 20524, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnRetardrpmBins = array, U16, 20532, [4], "RPM", 1, 0, 0, 25000, 0 -ALSFuelAdjustment = array, S16, 20540, [4x4], "percent", 0.1, 0, 0, 50, 1 -alsFuelAdjustmentLoadBins = array, U16, 20572, [4], "TPS", 1, 0, 0, 100, 0 -alsFuelAdjustmentrpmBins = array, U16, 20580, [4], "RPM", 1, 0, 0, 25000, 0 -ALSIgnSkipTable = array, S16, 20588, [4x4], "ratio", 10.0, 0, 0, 50, 1 -alsIgnSkipLoadBins = array, U16, 20620, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnSkiprpmBins = array, U16, 20628, [4], "RPM", 1, 0, 0, 25000, 0 -ignBlends1_table = array, S16, 20636, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends1_loadBins = array, U16, 20764, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends1_rpmBins = array, U16, 20780, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends1_blendParameter = bits, U08, 20796, [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, 20797, [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, 20798, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends1_blendValues = array, U08, 20814, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends2_table = array, S16, 20824, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends2_loadBins = array, U16, 20952, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends2_rpmBins = array, U16, 20968, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends2_blendParameter = bits, U08, 20984, [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, 20985, [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, 20986, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends2_blendValues = array, U08, 21002, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends3_table = array, S16, 21012, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends3_loadBins = array, U16, 21140, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends3_rpmBins = array, U16, 21156, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends3_blendParameter = bits, U08, 21172, [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, 21173, [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, 21174, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends3_blendValues = array, U08, 21190, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends4_table = array, S16, 21200, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends4_loadBins = array, U16, 21328, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends4_rpmBins = array, U16, 21344, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends4_blendParameter = bits, U08, 21360, [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, 21361, [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, 21362, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends4_blendValues = array, U08, 21378, [8], "%", 0.5, 0, 0, 100, 1 -veBlends1_table = array, S16, 21388, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends1_loadBins = array, U16, 21516, [8], "Load", 1, 0, 0, 1000, 0 -veBlends1_rpmBins = array, U16, 21532, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends1_blendParameter = bits, U08, 21548, [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, 21549, [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, 21550, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends1_blendValues = array, U08, 21566, [8], "%", 0.5, 0, 0, 100, 1 -veBlends2_table = array, S16, 21576, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends2_loadBins = array, U16, 21704, [8], "Load", 1, 0, 0, 1000, 0 -veBlends2_rpmBins = array, U16, 21720, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends2_blendParameter = bits, U08, 21736, [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, 21737, [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, 21738, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends2_blendValues = array, U08, 21754, [8], "%", 0.5, 0, 0, 100, 1 -veBlends3_table = array, S16, 21764, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends3_loadBins = array, U16, 21892, [8], "Load", 1, 0, 0, 1000, 0 -veBlends3_rpmBins = array, U16, 21908, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends3_blendParameter = bits, U08, 21924, [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, 21925, [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, 21926, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends3_blendValues = array, U08, 21942, [8], "%", 0.5, 0, 0, 100, 1 -veBlends4_table = array, S16, 21952, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends4_loadBins = array, U16, 22080, [8], "Load", 1, 0, 0, 1000, 0 -veBlends4_rpmBins = array, U16, 22096, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends4_blendParameter = bits, U08, 22112, [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, 22113, [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, 22114, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends4_blendValues = array, U08, 22130, [8], "%", 0.5, 0, 0, 100, 1 -throttleEstimateEffectiveAreaBins = array, U16, 22140, [12], "%", 0.1, 0, 0, 100, 1 -throttleEstimateEffectiveAreaValues = array, U16, 22164, [12], "g/s", 0.1, 0, 0, 6500, 1 -boostOpenLoopBlends1_table = array, S16, 22188, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends1_loadBins = array, U16, 22316, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends1_rpmBins = array, U16, 22332, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends1_blendParameter = bits, U08, 22348, [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, 22349, [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, 22350, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends1_blendValues = array, U08, 22366, [8], "%", 0.5, 0, 0, 100, 1 -boostOpenLoopBlends2_table = array, S16, 22376, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends2_loadBins = array, U16, 22504, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends2_rpmBins = array, U16, 22520, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends2_blendParameter = bits, U08, 22536, [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, 22537, [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, 22538, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends2_blendValues = array, U08, 22554, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends1_table = array, S16, 22564, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends1_loadBins = array, U16, 22692, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends1_rpmBins = array, U16, 22708, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends1_blendParameter = bits, U08, 22724, [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, 22725, [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, 22726, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends1_blendValues = array, U08, 22742, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends2_table = array, S16, 22752, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends2_loadBins = array, U16, 22880, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends2_rpmBins = array, U16, 22896, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends2_blendParameter = bits, U08, 22912, [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, 22913, [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, 22914, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends2_blendValues = array, U08, 22930, [8], "%", 0.5, 0, 0, 100, 1 -tcu_rangeP = array, U08, 22940, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeR = array, U08, 22946, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeN = array, U08, 22952, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeD = array, U08, 22958, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM = array, U08, 22964, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM3 = array, U08, 22970, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM2 = array, U08, 22976, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM1 = array, U08, 22982, [6], "level", 1, 0, 0, 3, 0 -tcu_rangePlus = array, U08, 22988, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeMinus = array, U08, 22994, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeLow = array, U08, 23000, [6], "level", 1, 0, 0, 3, 0 -lambdaMaxDeviationTable = array, U08, 23006, [4x4], "lambda", 0.01, 0, 0, 1, 2 -lambdaMaxDeviationLoadBins = array, U16, 23022, [4], "", 1, 0, 0, 1000, 0 -lambdaMaxDeviationRpmBins = array, U16, 23030, [4], "RPM", 1, 0, 0, 18000, 0 -injectorStagingTable = array, U08, 23038, [6x6], "%", 1, 0, 0, 90, 0 -injectorStagingLoadBins = array, U16, 23074, [6], "", 1, 0, 0, 1000, 0 -injectorStagingRpmBins = array, U16, 23086, [6], "RPM", 1, 0, 0, 18000, 0 -; total TS size = 23100 +lambdaLoadBins = array, U16, 18056, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 18088, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 18120, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 18376, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 18408, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 18440, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18696, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18712, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18728, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18984, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 19000, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 19016, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 19080, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 19096, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 19112, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 19192, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 19208, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 19228, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 19236, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 19244, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 19260, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 19276, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 19292, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 19308, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 19324, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 19340, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 19356, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 19372, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 19388, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 19404, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 19420, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 19436, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 19444, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 19452, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 19468, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 19484, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 19500, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 19516, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 19532, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 19548, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 19564, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 19580, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 19596, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 19612, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 19628, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 19644, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 19660, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 19668, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19676, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19684, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19692, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19700, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19708, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19716, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19724, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19732, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19740, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19748, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19756, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19764, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19772, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19780, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19788, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19796, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19804, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19840, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19846, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19852, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19888, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19894, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19900, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19932, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19940, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19948, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19980, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19988, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19996, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 20028, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 20036, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 20044, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 20172, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 20188, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 20204, [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, 20205, [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, 20206, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 20222, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 20232, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 20360, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 20376, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 20392, [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, 20393, [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, 20394, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 20410, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 20420, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 20548, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 20564, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 20580, [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, 20581, [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, 20582, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 20598, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 20608, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20736, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20752, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20768, [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, 20769, [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, 20770, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20786, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20796, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20924, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20940, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20956, [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, 20957, [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, 20958, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20974, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20984, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 21112, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 21128, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 21144, [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, 21145, [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, 21146, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 21162, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 21172, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 21300, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 21316, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 21332, [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, 21333, [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, 21334, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 21350, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 21360, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 21488, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 21504, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 21520, [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, 21521, [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, 21522, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 21538, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 21548, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 21572, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 21596, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21724, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21740, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21756, [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, 21757, [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, 21758, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21774, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21784, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21912, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21928, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21944, [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, 21945, [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, 21946, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21962, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21972, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 22100, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 22116, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 22132, [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, 22133, [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, 22134, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 22150, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 22160, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 22288, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 22304, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 22320, [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, 22321, [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, 22322, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 22338, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 22348, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 22354, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 22360, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 22366, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 22372, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 22378, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 22384, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 22390, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 22396, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 22402, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 22408, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 22414, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 22430, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 22438, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 22446, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 22482, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 22494, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 22506, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 22514, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 22522, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 22530, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 22538, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 22546, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 22554, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 22570, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 22586, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 22594, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 22610, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22810, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22830, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22840, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22940, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22960, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22970, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 23002, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 23018, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 23022, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 23026, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 23030, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 23038, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 23054, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 23062, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 23070, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 23080 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1620,6 +1615,17 @@ injectorStagingRpmBins = array, U16, 23086, [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" @@ -1678,6 +1684,7 @@ injectorStagingRpmBins = array, U16, 23086, [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." @@ -1685,7 +1692,6 @@ injectorStagingRpmBins = array, U16, 23086, [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." @@ -1705,12 +1711,11 @@ injectorStagingRpmBins = array, U16, 23086, [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" @@ -1755,16 +1760,8 @@ injectorStagingRpmBins = array, U16, 23086, [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" @@ -2086,8 +2083,6 @@ injectorStagingRpmBins = array, U16, 23086, [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." @@ -2187,7 +2182,6 @@ injectorStagingRpmBins = array, U16, 23086, [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 +2357,7 @@ injectorStagingRpmBins = array, U16, 23086, [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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen-nb1.ini b/firmware/tunerstudio/generated/rusefi_hellen-nb1.ini index 431f09c101..f0d6d978fb 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen-nb1.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen-nb1.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen-nb1.484659014" + signature = "rusEFI master.2024.03.20.hellen-nb1.1355232462" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen-nb1.484659014" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen-nb1.1355232462" ; 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="NONE","2C - O2S","TPS1","intMAP","1G - Steering/RES2","3E - TPS","1B - Battery Sense","2H - CAM","3S - EGR BOOST IN","2A - Pressure Input","2J - CRANK","2L - MAF","3D - MAP","2E - Coolant","2B - IAT","4C - IN TEMP/PPS2","1P - AC Switch" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:29 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:58 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen121nissan.ini b/firmware/tunerstudio/generated/rusefi_hellen121nissan.ini index 0332ec2723..3dbf66d17f 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen121nissan.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen121nissan.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen121nissan.3628144497" + signature = "rusEFI master.2024.03.20.hellen121nissan.2489675001" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen121nissan.3628144497" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen121nissan.2489675001" ; 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="NONE","51 - MAF","INVALID","Aux P68","106 - PPS 1","50 - TPS 1","109 Ignition Key Voltage","INVALID","INVALID","69 - TPS 2","INVALID","Aux P66","Aux P67","73 - CLT","34 - IAT","98 - PPS 2" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:20 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:50 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen121vag.ini b/firmware/tunerstudio/generated/rusefi_hellen121vag.ini index 8b37a1dc14..36ce4d3b3d 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen121vag.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen121vag.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen121vag.3313673344" + signature = "rusEFI master.2024.03.20.hellen121vag.2309414664" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen121vag.3313673344" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen121vag.2309414664" ; 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="NONE","14 - O2","INVALID","INVALID","34 In PPS1","92 - TPS 1","106 - KNOCK","86 - CAM1","87 - CAM2","84 - TPS2","INVALID","29 In Maf","101 - MAP2","93 - CLT","85 - IAT","35 In PPS2" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:00 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:30 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen128.ini b/firmware/tunerstudio/generated/rusefi_hellen128.ini index 5ebaf60ceb..cf93da8453 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen128.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen128.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen128.409572241" + signature = "rusEFI master.2024.03.20.hellen128.1414391833" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen128.409572241" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen128.1414391833" ; 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="NONE","P36_IN_O2S","P32_IN_O2S2","P40_IN_MAP3","C24 - PPS1","E31 - TPS1","Battery Sense","E40 - IN_CAM","P30_IN_AUX4","E34 - TPS2","E37 - Crank Input","E47 - MAF","E23 - MAP","E29 - Coolant Temp","E45 - IAT","C25 - PPS2","P41_IN_AUX3" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:16 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:46 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen154hyundai.ini b/firmware/tunerstudio/generated/rusefi_hellen154hyundai.ini index 326db86e19..b0d1640d08 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen154hyundai.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen154hyundai.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen154hyundai.2576587691" + signature = "rusEFI master.2024.03.20.hellen154hyundai.3585597475" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen154hyundai.2576587691" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen154hyundai.3585597475" ; 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="NONE","K21 Ambient Temperature","K58 Oil Temp","K54 A/C pressure","PPS 1","TPS 1","K2 Ignition Key Voltage","X10 AIN2","INVALID","TPS 2","X11 AIN1","Map Sensor K31","K10 Sensor","CLT","IAT","PPS 2" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:01 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:32 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen154hyundai_f7.ini b/firmware/tunerstudio/generated/rusefi_hellen154hyundai_f7.ini index c7d734bd5b..bf6135866c 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen154hyundai_f7.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen154hyundai_f7.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen154hyundai_f7.2576587691" + signature = "rusEFI master.2024.03.20.hellen154hyundai_f7.3585597475" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen154hyundai_f7.2576587691" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen154hyundai_f7.3585597475" ; 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="NONE","K21 Ambient Temperature","K58 Oil Temp","K54 A/C pressure","PPS 1","TPS 1","K2 Ignition Key Voltage","X10 AIN2","INVALID","TPS 2","X11 AIN1","Map Sensor K31","K10 Sensor","CLT","IAT","PPS 2" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:03 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:33 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen72.ini b/firmware/tunerstudio/generated/rusefi_hellen72.ini index 0941a004c3..803cfa1d8a 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen72.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen72.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen72.1964658170" + signature = "rusEFI master.2024.03.20.hellen72.960378482" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen72.1964658170" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen72.960378482" ; 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="NONE","5N - TPS2","3L - IGN_7 / AFR","intMAP (A15)","5P - PPS1","4V - TPS (A17)","4S/4T - Alternator voltage","3V - CAM (A19)","4J - VTCS/AUX4 (A20)","4F - AC_PRES/AUX1 (A23)","3Y - CRANK (A24)","4X - MAF (A9)","4U - MAP2/Ign8 (A10)","4P - CLT (A11)","4N - IAT (A14)","5M - PPS2 OR TEMPERATURE SENSOR","4AE - EGR/MAP4 (A22)" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:30 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:59 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen81.ini b/firmware/tunerstudio/generated/rusefi_hellen81.ini index 329123dcc8..62eae693f8 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen81.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen81.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen81.2422942080" + signature = "rusEFI master.2024.03.20.hellen81.3696185864" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen81.2422942080" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen81.3696185864" ; 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="NONE","18 - IN_O2S","55 - IN_O2S2","41 - IN_MAP3","78 - IN_PPS","16 - IN_TPS","13 - IN_VIGN","79 - IN_CAM","77 - IN_AUX4","74 - IN_AUX1","15 - IN_CRANK (A24)","37 - IN_MAP1","38 - IN_MAP2","39 - IN_CLT","40 - IN_IAT","75 - IN_AUX2","76 - IN_AUX3" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:07 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:37 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellen88bmw.ini b/firmware/tunerstudio/generated/rusefi_hellen88bmw.ini index ee6da7e05d..8a0edb1c40 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen88bmw.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen88bmw.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellen88bmw.2269658307" + signature = "rusEFI master.2024.03.20.hellen88bmw.3412870987" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellen88bmw.2269658307" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellen88bmw.3412870987" ; 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="NONE","VIN5","VIN6","INVALID","PPS1","73 - TPS","56 - Battery Sense","17 - CAM","Aux BARO","Aux TPS2","16 - CRANK","41 - MAF","Aux MAP","78 - CLT","77 - IAT","Aux PPS2","Aux TPS3" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:04 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:35 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellenNA6.ini b/firmware/tunerstudio/generated/rusefi_hellenNA6.ini index 60f28265db..b8f4ee2cff 100644 --- a/firmware/tunerstudio/generated/rusefi_hellenNA6.ini +++ b/firmware/tunerstudio/generated/rusefi_hellenNA6.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellenNA6.1633573510" + signature = "rusEFI master.2024.03.20.hellenNA6.762978574" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellenNA6.1633573510" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellenNA6.762978574" ; 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="NONE","3N - O2S","2N - Temperature Sensor","intMAP (A15)","4I - PPS1","TPS Input","1B - Battery Sense","INVALID","4G - PPS2 OR TEMPERATURE SENSOR","4H - TPS2","INVALID","3O - MAF","2M - Pressure Sensor","3Q - CLT","3P - IAT","1V - Clutch Switch","1Q AC Switch" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:17 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:47 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_hellenNA8_96.ini b/firmware/tunerstudio/generated/rusefi_hellenNA8_96.ini index 48e982b9c7..f30662dbf2 100644 --- a/firmware/tunerstudio/generated/rusefi_hellenNA8_96.ini +++ b/firmware/tunerstudio/generated/rusefi_hellenNA8_96.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.hellenNA8_96.2659457096" + signature = "rusEFI master.2024.03.20.hellenNA8_96.3533726656" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.hellenNA8_96.2659457096" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.hellenNA8_96.3533726656" ; 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="NONE","2C - O2S","TPS1","intMAP","PPS1","2F - TPS","3B - Battery Sense","3G - CAM","3S - EGR BOOST IN","2A - Pressure Input","3F - CRANK","2B - MAF","INVALID","2G - Coolant","2B - IAT","4C - IN TEMP/PPS2","1K - AC Switch" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:34:58 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:29 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_m74_9.ini b/firmware/tunerstudio/generated/rusefi_m74_9.ini index 40069c6f20..a3d73af812 100644 --- a/firmware/tunerstudio/generated/rusefi_m74_9.ini +++ b/firmware/tunerstudio/generated/rusefi_m74_9.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.m74_9.1094812089" + signature = "rusEFI master.2024.03.20.m74_9.224786993" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.m74_9.1094812089" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.m74_9.224786993" ; 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="NONE","INVALID","MAF/MAP sensor signal","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","Pedal position sensor 1 signal PPS1","Pedal position sensor 2 signal PPS2","ETB TPS position sensor 1 signal","ETB TPS position sensor 2 signal" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:44 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:13 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_mre_f4.ini b/firmware/tunerstudio/generated/rusefi_mre_f4.ini index 65e9cc5e31..f02799396b 100644 --- a/firmware/tunerstudio/generated/rusefi_mre_f4.ini +++ b/firmware/tunerstudio/generated/rusefi_mre_f4.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.mre_f4.4130662297" + signature = "rusEFI master.2024.03.20.mre_f4.3121650705" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.mre_f4.4130662297" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.mre_f4.3121650705" ; 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="NONE","18 - AN temp 1","23 - AN temp 2","24 - AN temp 3 or Hall Input","22 - AN temp 4 or Hall Input","28 - AN volt 10, Aux Reuse","INVALID","26 - AN volt 2","31 - AN volt 3","36 - AN volt 8, Aux Reuse","40 - AN volt 9, Aux Reuse","27 - AN volt 1","Battery Sense","19 - AN volt 4","20 - AN volt 5","32 - AN volt 6, Aux Reuse","30 - AN volt 7" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:38 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:08 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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], 0="NONE",3="23 - AN temp 2" -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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [0:7], 0="NONE",3="23 - AN temp 2" +coastingFuelCutRpmHigh = scalar, S16, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_mre_f7.ini b/firmware/tunerstudio/generated/rusefi_mre_f7.ini index 46ea8d1509..5ae85b407c 100644 --- a/firmware/tunerstudio/generated/rusefi_mre_f7.ini +++ b/firmware/tunerstudio/generated/rusefi_mre_f7.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.mre_f7.4130662297" + signature = "rusEFI master.2024.03.20.mre_f7.3121650705" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.mre_f7.4130662297" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.mre_f7.3121650705" ; 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="NONE","18 - AN temp 1","23 - AN temp 2","24 - AN temp 3 or Hall Input","22 - AN temp 4 or Hall Input","28 - AN volt 10, Aux Reuse","INVALID","26 - AN volt 2","31 - AN volt 3","36 - AN volt 8, Aux Reuse","40 - AN volt 9, Aux Reuse","27 - AN volt 1","Battery Sense","19 - AN volt 4","20 - AN volt 5","32 - AN volt 6, Aux Reuse","30 - AN volt 7" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:40 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:09 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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], 0="NONE",3="23 - AN temp 2" -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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [0:7], 0="NONE",3="23 - AN temp 2" +coastingFuelCutRpmHigh = scalar, S16, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_nucleo_f413.ini b/firmware/tunerstudio/generated/rusefi_nucleo_f413.ini index f27746b266..83190e5595 100644 --- a/firmware/tunerstudio/generated/rusefi_nucleo_f413.ini +++ b/firmware/tunerstudio/generated/rusefi_nucleo_f413.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.nucleo_f413.4126914918" + signature = "rusEFI master.2024.03.20.nucleo_f413.3118449390" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.nucleo_f413.4126914918" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.nucleo_f413.3118449390" ; 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 Wed Mar 20 15:36:03 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:33 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_405.ini b/firmware/tunerstudio/generated/rusefi_prometheus_405.ini index 158575f9d2..771dacaf74 100644 --- a/firmware/tunerstudio/generated/rusefi_prometheus_405.ini +++ b/firmware/tunerstudio/generated/rusefi_prometheus_405.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.prometheus_405.3312415990" + signature = "rusEFI master.2024.03.20.prometheus_405.2303397758" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.prometheus_405.3312415990" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.prometheus_405.2303397758" ; 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 Wed Mar 20 15:36:11 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:41 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_469.ini b/firmware/tunerstudio/generated/rusefi_prometheus_469.ini index 3284eaae0c..14d41de3a4 100644 --- a/firmware/tunerstudio/generated/rusefi_prometheus_469.ini +++ b/firmware/tunerstudio/generated/rusefi_prometheus_469.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.prometheus_469.3312415990" + signature = "rusEFI master.2024.03.20.prometheus_469.2303397758" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.prometheus_469.3312415990" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.prometheus_469.2303397758" ; 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 Wed Mar 20 15:36:13 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:42 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f4.ini b/firmware/tunerstudio/generated/rusefi_proteus_f4.ini index 22de8384b5..3839f667bc 100644 --- a/firmware/tunerstudio/generated/rusefi_proteus_f4.ini +++ b/firmware/tunerstudio/generated/rusefi_proteus_f4.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.proteus_f4.475815825" + signature = "rusEFI master.2024.03.20.proteus_f4.1350050841" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.proteus_f4.475815825" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.proteus_f4.1350050841" ; 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="NONE","Analog Volt 5","Analog Volt 6","Analog Volt 7","Analog Volt 8","Analog Volt 9","Analog Volt 10","Analog Volt 11","Battery Sense","Analog Temp 3","Analog Temp 4","Analog Volt 1","Analog Volt 2","Analog Volt 3","Analog Volt 4","Analog Temp 1","Analog Temp 2" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:45 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:15 UTC 2024 -pageSize = 26428 +pageSize = 26408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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, 12000 -cltFuelCorrBins = array, F32, 18316, [16], "C", 1, 0, -100, 250, 2 -cltFuelCorr = array, F32, 18380, [16], "ratio", 1, 0, 0, 5, 2 -iatFuelCorrBins = array, F32, 18444, [16], "C", 1, 0, -100, 250, 2 -iatFuelCorr = array, F32, 18508, [16], "ratio", 1, 0, 0, 5, 2 -crankingFuelCoef = array, F32, 18572, [8], "ratio", 1, 0, 0, 50, 2 -crankingFuelBins = array, F32, 18604, [8], "C", 1, 0, -80, 170, 2 -crankingCycleCoef = array, F32, 18636, [8], "ratio", 1, 0, 0, 5, 2 -crankingCycleBins = array, F32, 18668, [8], "counter", 1, 0, -80, 170, 0 -cltIdleCorrBins = array, F32, 18700, [16], "C", 1, 0, -100, 250, 2 -cltIdleCorr = array, F32, 18764, [16], "ratio", 1, 0, 0, 10, 2 -mafDecoding = array, F32, 18828, [32], "kg/hour", 1, 0, -500, 4000, 2 -mafDecodingBins = array, F32, 18956, [32], "V", 1, 0, -5, 150, 2 -ignitionIatCorrTable = array, S08, 19084, [8x8], "deg", 0.1, 0, -25, 25, 1 -ignitionIatCorrTempBins = array, S08, 19148, [8], "C", 1, 0, -40, 120, 0 -ignitionIatCorrLoadBins = array, U08, 19156, [8], "Load", 5.0, 0, 0, 1000, 0 -injectionPhase = array, S16, 19164, [16x16], "deg", 1, 0, -720, 720, 0 -injPhaseLoadBins = array, U16, 19676, [16], "Load", 1, 0, 0, 1000, 0 -injPhaseRpmBins = array, U16, 19708, [16], "RPM", 1, 0, 0, 18000, 0 -tcuSolenoidTable = array, U08, 19740, [10x6], "onoff", 1, 0, 0, 1, 0 -mapEstimateTable = array, U16, 19800, [16x16], "kPa", 0.01, 0, 0, 600, 2 -mapEstimateTpsBins = array, U16, 20312, [16], "% TPS", 0.01, 0, 0, 100, 1 -mapEstimateRpmBins = array, U16, 20344, [16], "RPM", 1, 0, 0, 18000, 0 -vvtTable1 = array, S08, 20376, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable1LoadBins = array, U16, 20440, [8], "L", 1, 0, 0, 1000, 0 -vvtTable1RpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 -vvtTable2 = array, S08, 20472, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable2LoadBins = array, U16, 20536, [8], "L", 1, 0, 0, 1000, 0 -vvtTable2RpmBins = array, U16, 20552, [8], "RPM", 1, 0, 0, 18000, 0 -ignitionTable = array, S16, 20568, [16x16], "deg", 0.1, 0, -20, 90, 1 -ignitionLoadBins = array, U16, 21080, [16], "Load", 1, 0, 0, 1000, 0 -ignitionRpmBins = array, U16, 21112, [16], "RPM", 1, 0, 0, 18000, 0 -veTable = array, U16, 21144, [16x16], "%", 0.1, 0, 0, 999, 1 -veLoadBins = array, U16, 21656, [16], "kPa", 1, 0, 0, 1000, 0 -veRpmBins = array, U16, 21688, [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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 12000 +cltFuelCorrBins = array, F32, 17724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 17788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 17852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 17916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 17980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 18012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 18044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 18076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 18108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 18172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 18236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 18364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 18492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 18556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 18564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 18572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 19084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 19116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 19148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 19208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 19720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 19752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 19784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 19848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 19864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 19880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 19944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 19960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 19976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 20488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 20520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 20552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 21064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 21096, [16], "RPM", 1, 0, 0, 18000, 0 #if LAMBDA -lambdaTable = array, U08, 21720, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 +lambdaTable = array, U08, 21128, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 #else -lambdaTable = array, U08, 21720, [16x16], "afr", 0.1, 0, 0, 25, 1 +lambdaTable = array, U08, 21128, [16x16], "afr", 0.1, 0, 0, 25, 1 #endif -lambdaLoadBins = array, U16, 21976, [16], "", 1, 0, 0, 1000, 0 -lambdaRpmBins = array, U16, 22008, [16], "RPM", 1, 0, 0, 18000, 0 -tpsTpsAccelTable = array, F32, 22040, [8x8], "value", 1, 0, 0, 30000, 2 -tpsTpsAccelFromRpmBins = array, F32, 22296, [8], "from", 1, 0, 0, 30000, 2 -tpsTpsAccelToRpmBins = array, F32, 22328, [8], "to", 1, 0, 0, 25500, 2 -scriptTable1 = array, F32, 22360, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable1LoadBins = array, S16, 22616, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable1RpmBins = array, S16, 22632, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable2 = array, F32, 22648, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable2LoadBins = array, S16, 22904, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable2RpmBins = array, S16, 22920, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable3 = array, U08, 22936, [8x8], "value", 1, 0, 0, 255, 0 -scriptTable3LoadBins = array, S16, 23000, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable3RpmBins = array, S16, 23016, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable4 = array, U08, 23032, [10x8], "value", 1, 0, 0, 255, 0 -scriptTable4LoadBins = array, S16, 23112, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable4RpmBins = array, S16, 23128, [10], "RPM", 1, 0, -32000, 32000, 0 -ignTrimLoadBins = array, U16, 23148, [4], "", 1, 0, 0, 1000, 0 -ignTrimRpmBins = array, U16, 23156, [4], "rpm", 1, 0, 0, 20000, 0 -ignTrims1_table = array, S08, 23164, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims2_table = array, S08, 23180, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims3_table = array, S08, 23196, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims4_table = array, S08, 23212, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims5_table = array, S08, 23228, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims6_table = array, S08, 23244, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims7_table = array, S08, 23260, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims8_table = array, S08, 23276, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims9_table = array, S08, 23292, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims10_table = array, S08, 23308, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims11_table = array, S08, 23324, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims12_table = array, S08, 23340, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrimLoadBins = array, U16, 23356, [4], "", 1, 0, 0, 1000, 0 -fuelTrimRpmBins = array, U16, 23364, [4], "rpm", 1, 0, 0, 20000, 0 -fuelTrims1_table = array, S08, 23372, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims2_table = array, S08, 23388, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims3_table = array, S08, 23404, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims4_table = array, S08, 23420, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims5_table = array, S08, 23436, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims6_table = array, S08, 23452, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims7_table = array, S08, 23468, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims8_table = array, S08, 23484, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims9_table = array, S08, 23500, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims10_table = array, S08, 23516, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims11_table = array, S08, 23532, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims12_table = array, S08, 23548, [4x4], "", 0.2, 0, -25, 25, 1 -crankingFuelCoefE100 = array, U16, 23564, [8], "ratio", 0.01, 0, 0, 50, 2 -tcu_pcAirmassBins = array, U08, 23580, [8], "Airmass", 0.02, 0, 0, 255, 2 -tcu_pcValsR = array, U08, 23588, [8], "%", 1, 0, 0, 255, 0 -tcu_pcValsN = array, U08, 23596, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals1 = array, U08, 23604, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals2 = array, U08, 23612, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals3 = array, U08, 23620, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals4 = array, U08, 23628, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals12 = array, U08, 23636, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals23 = array, U08, 23644, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals34 = array, U08, 23652, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals21 = array, U08, 23660, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals32 = array, U08, 23668, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals43 = array, U08, 23676, [8], "%", 1, 0, 0, 255, 0 -tcu_tccTpsBins = array, U08, 23684, [8], "TPS", 1, 0, 0, 255, 0 -tcu_tccLockSpeed = array, U08, 23692, [8], "MPH", 1, 0, 0, 255, 0 -tcu_tccUnlockSpeed = array, U08, 23700, [8], "MPH", 1, 0, 0, 255, 0 -tcu_32SpeedBins = array, U08, 23708, [8], "KPH", 1, 0, 0, 255, 0 -tcu_32Vals = array, U08, 23716, [8], "%", 1, 0, 0, 255, 0 -throttle2TrimTable = array, S08, 23724, [6x6], "%", 0.1, 0, -10, 10, 1 -throttle2TrimTpsBins = array, U08, 23760, [6], "%", 1, 0, 0, 120, 0 -throttle2TrimRpmBins = array, U08, 23766, [6], "RPM", 100.0, 0, 0, 25000, 0 -maxKnockRetardTable = array, U08, 23772, [6x6], "deg", 0.25, 0, 0, 30, 2 -maxKnockRetardLoadBins = array, U08, 23808, [6], "%", 1, 0, 0, 250, 0 -maxKnockRetardRpmBins = array, U08, 23814, [6], "RPM", 100.0, 0, 0, 25000, 0 -ALSTimingRetardTable = array, S16, 23820, [4x4], "deg", 0.1, 0, -60, 0, 1 -alsIgnRetardLoadBins = array, U16, 23852, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnRetardrpmBins = array, U16, 23860, [4], "RPM", 1, 0, 0, 25000, 0 -ALSFuelAdjustment = array, S16, 23868, [4x4], "percent", 0.1, 0, 0, 50, 1 -alsFuelAdjustmentLoadBins = array, U16, 23900, [4], "TPS", 1, 0, 0, 100, 0 -alsFuelAdjustmentrpmBins = array, U16, 23908, [4], "RPM", 1, 0, 0, 25000, 0 -ALSIgnSkipTable = array, S16, 23916, [4x4], "ratio", 10.0, 0, 0, 50, 1 -alsIgnSkipLoadBins = array, U16, 23948, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnSkiprpmBins = array, U16, 23956, [4], "RPM", 1, 0, 0, 25000, 0 -ignBlends1_table = array, S16, 23964, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends1_loadBins = array, U16, 24092, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends1_rpmBins = array, U16, 24108, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends1_blendParameter = bits, U08, 24124, [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, 24125, [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, 24126, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends1_blendValues = array, U08, 24142, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends2_table = array, S16, 24152, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends2_loadBins = array, U16, 24280, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends2_rpmBins = array, U16, 24296, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends2_blendParameter = bits, U08, 24312, [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, 24313, [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, 24314, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends2_blendValues = array, U08, 24330, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends3_table = array, S16, 24340, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends3_loadBins = array, U16, 24468, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends3_rpmBins = array, U16, 24484, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends3_blendParameter = bits, U08, 24500, [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, 24501, [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, 24502, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends3_blendValues = array, U08, 24518, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends4_table = array, S16, 24528, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends4_loadBins = array, U16, 24656, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends4_rpmBins = array, U16, 24672, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends4_blendParameter = bits, U08, 24688, [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, 24689, [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, 24690, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends4_blendValues = array, U08, 24706, [8], "%", 0.5, 0, 0, 100, 1 -veBlends1_table = array, S16, 24716, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends1_loadBins = array, U16, 24844, [8], "Load", 1, 0, 0, 1000, 0 -veBlends1_rpmBins = array, U16, 24860, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends1_blendParameter = bits, U08, 24876, [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, 24877, [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, 24878, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends1_blendValues = array, U08, 24894, [8], "%", 0.5, 0, 0, 100, 1 -veBlends2_table = array, S16, 24904, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends2_loadBins = array, U16, 25032, [8], "Load", 1, 0, 0, 1000, 0 -veBlends2_rpmBins = array, U16, 25048, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends2_blendParameter = bits, U08, 25064, [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, 25065, [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, 25066, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends2_blendValues = array, U08, 25082, [8], "%", 0.5, 0, 0, 100, 1 -veBlends3_table = array, S16, 25092, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends3_loadBins = array, U16, 25220, [8], "Load", 1, 0, 0, 1000, 0 -veBlends3_rpmBins = array, U16, 25236, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends3_blendParameter = bits, U08, 25252, [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, 25253, [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, 25254, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends3_blendValues = array, U08, 25270, [8], "%", 0.5, 0, 0, 100, 1 -veBlends4_table = array, S16, 25280, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends4_loadBins = array, U16, 25408, [8], "Load", 1, 0, 0, 1000, 0 -veBlends4_rpmBins = array, U16, 25424, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends4_blendParameter = bits, U08, 25440, [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, 25441, [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, 25442, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends4_blendValues = array, U08, 25458, [8], "%", 0.5, 0, 0, 100, 1 -throttleEstimateEffectiveAreaBins = array, U16, 25468, [12], "%", 0.1, 0, 0, 100, 1 -throttleEstimateEffectiveAreaValues = array, U16, 25492, [12], "g/s", 0.1, 0, 0, 6500, 1 -boostOpenLoopBlends1_table = array, S16, 25516, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends1_loadBins = array, U16, 25644, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends1_rpmBins = array, U16, 25660, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends1_blendParameter = bits, U08, 25676, [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, 25677, [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, 25678, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends1_blendValues = array, U08, 25694, [8], "%", 0.5, 0, 0, 100, 1 -boostOpenLoopBlends2_table = array, S16, 25704, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends2_loadBins = array, U16, 25832, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends2_rpmBins = array, U16, 25848, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends2_blendParameter = bits, U08, 25864, [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, 25865, [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, 25866, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends2_blendValues = array, U08, 25882, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends1_table = array, S16, 25892, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends1_loadBins = array, U16, 26020, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends1_rpmBins = array, U16, 26036, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends1_blendParameter = bits, U08, 26052, [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, 26053, [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, 26054, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends1_blendValues = array, U08, 26070, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends2_table = array, S16, 26080, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends2_loadBins = array, U16, 26208, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends2_rpmBins = array, U16, 26224, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends2_blendParameter = bits, U08, 26240, [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, 26241, [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, 26242, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends2_blendValues = array, U08, 26258, [8], "%", 0.5, 0, 0, 100, 1 -tcu_rangeP = array, U08, 26268, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeR = array, U08, 26274, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeN = array, U08, 26280, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeD = array, U08, 26286, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM = array, U08, 26292, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM3 = array, U08, 26298, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM2 = array, U08, 26304, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM1 = array, U08, 26310, [6], "level", 1, 0, 0, 3, 0 -tcu_rangePlus = array, U08, 26316, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeMinus = array, U08, 26322, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeLow = array, U08, 26328, [6], "level", 1, 0, 0, 3, 0 -lambdaMaxDeviationTable = array, U08, 26334, [4x4], "lambda", 0.01, 0, 0, 1, 2 -lambdaMaxDeviationLoadBins = array, U16, 26350, [4], "", 1, 0, 0, 1000, 0 -lambdaMaxDeviationRpmBins = array, U16, 26358, [4], "RPM", 1, 0, 0, 18000, 0 -injectorStagingTable = array, U08, 26366, [6x6], "%", 1, 0, 0, 90, 0 -injectorStagingLoadBins = array, U16, 26402, [6], "", 1, 0, 0, 1000, 0 -injectorStagingRpmBins = array, U16, 26414, [6], "RPM", 1, 0, 0, 18000, 0 -; total TS size = 26428 +lambdaLoadBins = array, U16, 21384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 21416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 21448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 21704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 21736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 21768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 22024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 22040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 22056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 22312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 22328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 22344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 22408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 22424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 22440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 22520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 22536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 22556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 22564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 22572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 22588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 22604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 22620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 22636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 22652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 22668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 22684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 22700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 22716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 22732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 22748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 22764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 22772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 22780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 22796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 22812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 22828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 22844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 22860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 22876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 22892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 22908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 22924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 22940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 22956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 22972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 22988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 22996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 23004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 23012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 23020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 23028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 23036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 23044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 23052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 23060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 23068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 23076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 23084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 23092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 23100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 23108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 23116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 23124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 23132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 23168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 23174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 23180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 23216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 23222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 23228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 23260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 23268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 23276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 23308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 23316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 23324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 23356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 23364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 23372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 23500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 23516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 23532, [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, 23533, [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, 23534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 23550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 23560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 23688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 23704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 23720, [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, 23721, [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, 23722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 23738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 23748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 23876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 23892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 23908, [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, 23909, [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, 23910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 23926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 23936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 24064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 24080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 24096, [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, 24097, [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, 24098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 24114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 24124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 24252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 24268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 24284, [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, 24285, [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, 24286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 24302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 24312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 24440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 24456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 24472, [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, 24473, [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, 24474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 24490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 24500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 24628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 24644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 24660, [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, 24661, [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, 24662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 24678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 24688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 24816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 24832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 24848, [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, 24849, [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, 24850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 24866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 24876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 24900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 24924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 25052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 25068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 25084, [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, 25085, [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, 25086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 25102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 25112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 25240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 25256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 25272, [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, 25273, [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, 25274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 25290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 25300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 25428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 25444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 25460, [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, 25461, [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, 25462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 25478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 25488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 25616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 25632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 25648, [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, 25649, [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, 25650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 25666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 25676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 25682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 25688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 25694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 25700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 25706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 25712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 25718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 25724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 25730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 25736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 25742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 25758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 25766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 25774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 25810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 25822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 25834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 25842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 25850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 25858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 25866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 25874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 25882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 25898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 25914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 25922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 25938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 26138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 26158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 26168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 26268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 26288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 26298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 26330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 26346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 26350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 26354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 26358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 26366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 26382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 26390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 26398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 26408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,6 +1666,17 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -1729,6 +1735,7 @@ injectorStagingRpmBins = array, U16, 26414, [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." @@ -1736,7 +1743,6 @@ injectorStagingRpmBins = array, U16, 26414, [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." @@ -1756,12 +1762,11 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -1806,16 +1811,8 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -2137,8 +2134,6 @@ injectorStagingRpmBins = array, U16, 26414, [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." @@ -2238,7 +2233,6 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -2414,6 +2408,7 @@ injectorStagingRpmBins = array, U16, 26414, [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 diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f7.ini b/firmware/tunerstudio/generated/rusefi_proteus_f7.ini index a9e28f4461..ef78c743bf 100644 --- a/firmware/tunerstudio/generated/rusefi_proteus_f7.ini +++ b/firmware/tunerstudio/generated/rusefi_proteus_f7.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.proteus_f7.475815825" + signature = "rusEFI master.2024.03.20.proteus_f7.1350050841" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.proteus_f7.475815825" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.proteus_f7.1350050841" ; 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="NONE","Analog Volt 5","Analog Volt 6","Analog Volt 7","Analog Volt 8","Analog Volt 9","Analog Volt 10","Analog Volt 11","Battery Sense","Analog Temp 3","Analog Temp 4","Analog Volt 1","Analog Volt 2","Analog Volt 3","Analog Volt 4","Analog Temp 1","Analog Temp 2" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:46 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:16 UTC 2024 -pageSize = 26428 +pageSize = 26408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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, 12000 -cltFuelCorrBins = array, F32, 18316, [16], "C", 1, 0, -100, 250, 2 -cltFuelCorr = array, F32, 18380, [16], "ratio", 1, 0, 0, 5, 2 -iatFuelCorrBins = array, F32, 18444, [16], "C", 1, 0, -100, 250, 2 -iatFuelCorr = array, F32, 18508, [16], "ratio", 1, 0, 0, 5, 2 -crankingFuelCoef = array, F32, 18572, [8], "ratio", 1, 0, 0, 50, 2 -crankingFuelBins = array, F32, 18604, [8], "C", 1, 0, -80, 170, 2 -crankingCycleCoef = array, F32, 18636, [8], "ratio", 1, 0, 0, 5, 2 -crankingCycleBins = array, F32, 18668, [8], "counter", 1, 0, -80, 170, 0 -cltIdleCorrBins = array, F32, 18700, [16], "C", 1, 0, -100, 250, 2 -cltIdleCorr = array, F32, 18764, [16], "ratio", 1, 0, 0, 10, 2 -mafDecoding = array, F32, 18828, [32], "kg/hour", 1, 0, -500, 4000, 2 -mafDecodingBins = array, F32, 18956, [32], "V", 1, 0, -5, 150, 2 -ignitionIatCorrTable = array, S08, 19084, [8x8], "deg", 0.1, 0, -25, 25, 1 -ignitionIatCorrTempBins = array, S08, 19148, [8], "C", 1, 0, -40, 120, 0 -ignitionIatCorrLoadBins = array, U08, 19156, [8], "Load", 5.0, 0, 0, 1000, 0 -injectionPhase = array, S16, 19164, [16x16], "deg", 1, 0, -720, 720, 0 -injPhaseLoadBins = array, U16, 19676, [16], "Load", 1, 0, 0, 1000, 0 -injPhaseRpmBins = array, U16, 19708, [16], "RPM", 1, 0, 0, 18000, 0 -tcuSolenoidTable = array, U08, 19740, [10x6], "onoff", 1, 0, 0, 1, 0 -mapEstimateTable = array, U16, 19800, [16x16], "kPa", 0.01, 0, 0, 600, 2 -mapEstimateTpsBins = array, U16, 20312, [16], "% TPS", 0.01, 0, 0, 100, 1 -mapEstimateRpmBins = array, U16, 20344, [16], "RPM", 1, 0, 0, 18000, 0 -vvtTable1 = array, S08, 20376, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable1LoadBins = array, U16, 20440, [8], "L", 1, 0, 0, 1000, 0 -vvtTable1RpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 -vvtTable2 = array, S08, 20472, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable2LoadBins = array, U16, 20536, [8], "L", 1, 0, 0, 1000, 0 -vvtTable2RpmBins = array, U16, 20552, [8], "RPM", 1, 0, 0, 18000, 0 -ignitionTable = array, S16, 20568, [16x16], "deg", 0.1, 0, -20, 90, 1 -ignitionLoadBins = array, U16, 21080, [16], "Load", 1, 0, 0, 1000, 0 -ignitionRpmBins = array, U16, 21112, [16], "RPM", 1, 0, 0, 18000, 0 -veTable = array, U16, 21144, [16x16], "%", 0.1, 0, 0, 999, 1 -veLoadBins = array, U16, 21656, [16], "kPa", 1, 0, 0, 1000, 0 -veRpmBins = array, U16, 21688, [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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 12000 +cltFuelCorrBins = array, F32, 17724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 17788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 17852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 17916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 17980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 18012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 18044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 18076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 18108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 18172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 18236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 18364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 18492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 18556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 18564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 18572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 19084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 19116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 19148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 19208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 19720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 19752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 19784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 19848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 19864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 19880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 19944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 19960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 19976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 20488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 20520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 20552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 21064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 21096, [16], "RPM", 1, 0, 0, 18000, 0 #if LAMBDA -lambdaTable = array, U08, 21720, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 +lambdaTable = array, U08, 21128, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 #else -lambdaTable = array, U08, 21720, [16x16], "afr", 0.1, 0, 0, 25, 1 +lambdaTable = array, U08, 21128, [16x16], "afr", 0.1, 0, 0, 25, 1 #endif -lambdaLoadBins = array, U16, 21976, [16], "", 1, 0, 0, 1000, 0 -lambdaRpmBins = array, U16, 22008, [16], "RPM", 1, 0, 0, 18000, 0 -tpsTpsAccelTable = array, F32, 22040, [8x8], "value", 1, 0, 0, 30000, 2 -tpsTpsAccelFromRpmBins = array, F32, 22296, [8], "from", 1, 0, 0, 30000, 2 -tpsTpsAccelToRpmBins = array, F32, 22328, [8], "to", 1, 0, 0, 25500, 2 -scriptTable1 = array, F32, 22360, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable1LoadBins = array, S16, 22616, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable1RpmBins = array, S16, 22632, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable2 = array, F32, 22648, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable2LoadBins = array, S16, 22904, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable2RpmBins = array, S16, 22920, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable3 = array, U08, 22936, [8x8], "value", 1, 0, 0, 255, 0 -scriptTable3LoadBins = array, S16, 23000, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable3RpmBins = array, S16, 23016, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable4 = array, U08, 23032, [10x8], "value", 1, 0, 0, 255, 0 -scriptTable4LoadBins = array, S16, 23112, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable4RpmBins = array, S16, 23128, [10], "RPM", 1, 0, -32000, 32000, 0 -ignTrimLoadBins = array, U16, 23148, [4], "", 1, 0, 0, 1000, 0 -ignTrimRpmBins = array, U16, 23156, [4], "rpm", 1, 0, 0, 20000, 0 -ignTrims1_table = array, S08, 23164, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims2_table = array, S08, 23180, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims3_table = array, S08, 23196, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims4_table = array, S08, 23212, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims5_table = array, S08, 23228, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims6_table = array, S08, 23244, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims7_table = array, S08, 23260, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims8_table = array, S08, 23276, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims9_table = array, S08, 23292, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims10_table = array, S08, 23308, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims11_table = array, S08, 23324, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims12_table = array, S08, 23340, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrimLoadBins = array, U16, 23356, [4], "", 1, 0, 0, 1000, 0 -fuelTrimRpmBins = array, U16, 23364, [4], "rpm", 1, 0, 0, 20000, 0 -fuelTrims1_table = array, S08, 23372, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims2_table = array, S08, 23388, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims3_table = array, S08, 23404, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims4_table = array, S08, 23420, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims5_table = array, S08, 23436, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims6_table = array, S08, 23452, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims7_table = array, S08, 23468, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims8_table = array, S08, 23484, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims9_table = array, S08, 23500, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims10_table = array, S08, 23516, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims11_table = array, S08, 23532, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims12_table = array, S08, 23548, [4x4], "", 0.2, 0, -25, 25, 1 -crankingFuelCoefE100 = array, U16, 23564, [8], "ratio", 0.01, 0, 0, 50, 2 -tcu_pcAirmassBins = array, U08, 23580, [8], "Airmass", 0.02, 0, 0, 255, 2 -tcu_pcValsR = array, U08, 23588, [8], "%", 1, 0, 0, 255, 0 -tcu_pcValsN = array, U08, 23596, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals1 = array, U08, 23604, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals2 = array, U08, 23612, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals3 = array, U08, 23620, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals4 = array, U08, 23628, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals12 = array, U08, 23636, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals23 = array, U08, 23644, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals34 = array, U08, 23652, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals21 = array, U08, 23660, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals32 = array, U08, 23668, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals43 = array, U08, 23676, [8], "%", 1, 0, 0, 255, 0 -tcu_tccTpsBins = array, U08, 23684, [8], "TPS", 1, 0, 0, 255, 0 -tcu_tccLockSpeed = array, U08, 23692, [8], "MPH", 1, 0, 0, 255, 0 -tcu_tccUnlockSpeed = array, U08, 23700, [8], "MPH", 1, 0, 0, 255, 0 -tcu_32SpeedBins = array, U08, 23708, [8], "KPH", 1, 0, 0, 255, 0 -tcu_32Vals = array, U08, 23716, [8], "%", 1, 0, 0, 255, 0 -throttle2TrimTable = array, S08, 23724, [6x6], "%", 0.1, 0, -10, 10, 1 -throttle2TrimTpsBins = array, U08, 23760, [6], "%", 1, 0, 0, 120, 0 -throttle2TrimRpmBins = array, U08, 23766, [6], "RPM", 100.0, 0, 0, 25000, 0 -maxKnockRetardTable = array, U08, 23772, [6x6], "deg", 0.25, 0, 0, 30, 2 -maxKnockRetardLoadBins = array, U08, 23808, [6], "%", 1, 0, 0, 250, 0 -maxKnockRetardRpmBins = array, U08, 23814, [6], "RPM", 100.0, 0, 0, 25000, 0 -ALSTimingRetardTable = array, S16, 23820, [4x4], "deg", 0.1, 0, -60, 0, 1 -alsIgnRetardLoadBins = array, U16, 23852, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnRetardrpmBins = array, U16, 23860, [4], "RPM", 1, 0, 0, 25000, 0 -ALSFuelAdjustment = array, S16, 23868, [4x4], "percent", 0.1, 0, 0, 50, 1 -alsFuelAdjustmentLoadBins = array, U16, 23900, [4], "TPS", 1, 0, 0, 100, 0 -alsFuelAdjustmentrpmBins = array, U16, 23908, [4], "RPM", 1, 0, 0, 25000, 0 -ALSIgnSkipTable = array, S16, 23916, [4x4], "ratio", 10.0, 0, 0, 50, 1 -alsIgnSkipLoadBins = array, U16, 23948, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnSkiprpmBins = array, U16, 23956, [4], "RPM", 1, 0, 0, 25000, 0 -ignBlends1_table = array, S16, 23964, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends1_loadBins = array, U16, 24092, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends1_rpmBins = array, U16, 24108, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends1_blendParameter = bits, U08, 24124, [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, 24125, [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, 24126, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends1_blendValues = array, U08, 24142, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends2_table = array, S16, 24152, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends2_loadBins = array, U16, 24280, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends2_rpmBins = array, U16, 24296, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends2_blendParameter = bits, U08, 24312, [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, 24313, [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, 24314, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends2_blendValues = array, U08, 24330, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends3_table = array, S16, 24340, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends3_loadBins = array, U16, 24468, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends3_rpmBins = array, U16, 24484, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends3_blendParameter = bits, U08, 24500, [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, 24501, [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, 24502, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends3_blendValues = array, U08, 24518, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends4_table = array, S16, 24528, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends4_loadBins = array, U16, 24656, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends4_rpmBins = array, U16, 24672, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends4_blendParameter = bits, U08, 24688, [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, 24689, [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, 24690, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends4_blendValues = array, U08, 24706, [8], "%", 0.5, 0, 0, 100, 1 -veBlends1_table = array, S16, 24716, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends1_loadBins = array, U16, 24844, [8], "Load", 1, 0, 0, 1000, 0 -veBlends1_rpmBins = array, U16, 24860, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends1_blendParameter = bits, U08, 24876, [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, 24877, [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, 24878, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends1_blendValues = array, U08, 24894, [8], "%", 0.5, 0, 0, 100, 1 -veBlends2_table = array, S16, 24904, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends2_loadBins = array, U16, 25032, [8], "Load", 1, 0, 0, 1000, 0 -veBlends2_rpmBins = array, U16, 25048, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends2_blendParameter = bits, U08, 25064, [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, 25065, [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, 25066, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends2_blendValues = array, U08, 25082, [8], "%", 0.5, 0, 0, 100, 1 -veBlends3_table = array, S16, 25092, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends3_loadBins = array, U16, 25220, [8], "Load", 1, 0, 0, 1000, 0 -veBlends3_rpmBins = array, U16, 25236, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends3_blendParameter = bits, U08, 25252, [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, 25253, [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, 25254, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends3_blendValues = array, U08, 25270, [8], "%", 0.5, 0, 0, 100, 1 -veBlends4_table = array, S16, 25280, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends4_loadBins = array, U16, 25408, [8], "Load", 1, 0, 0, 1000, 0 -veBlends4_rpmBins = array, U16, 25424, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends4_blendParameter = bits, U08, 25440, [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, 25441, [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, 25442, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends4_blendValues = array, U08, 25458, [8], "%", 0.5, 0, 0, 100, 1 -throttleEstimateEffectiveAreaBins = array, U16, 25468, [12], "%", 0.1, 0, 0, 100, 1 -throttleEstimateEffectiveAreaValues = array, U16, 25492, [12], "g/s", 0.1, 0, 0, 6500, 1 -boostOpenLoopBlends1_table = array, S16, 25516, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends1_loadBins = array, U16, 25644, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends1_rpmBins = array, U16, 25660, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends1_blendParameter = bits, U08, 25676, [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, 25677, [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, 25678, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends1_blendValues = array, U08, 25694, [8], "%", 0.5, 0, 0, 100, 1 -boostOpenLoopBlends2_table = array, S16, 25704, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends2_loadBins = array, U16, 25832, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends2_rpmBins = array, U16, 25848, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends2_blendParameter = bits, U08, 25864, [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, 25865, [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, 25866, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends2_blendValues = array, U08, 25882, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends1_table = array, S16, 25892, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends1_loadBins = array, U16, 26020, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends1_rpmBins = array, U16, 26036, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends1_blendParameter = bits, U08, 26052, [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, 26053, [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, 26054, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends1_blendValues = array, U08, 26070, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends2_table = array, S16, 26080, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends2_loadBins = array, U16, 26208, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends2_rpmBins = array, U16, 26224, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends2_blendParameter = bits, U08, 26240, [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, 26241, [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, 26242, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends2_blendValues = array, U08, 26258, [8], "%", 0.5, 0, 0, 100, 1 -tcu_rangeP = array, U08, 26268, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeR = array, U08, 26274, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeN = array, U08, 26280, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeD = array, U08, 26286, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM = array, U08, 26292, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM3 = array, U08, 26298, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM2 = array, U08, 26304, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM1 = array, U08, 26310, [6], "level", 1, 0, 0, 3, 0 -tcu_rangePlus = array, U08, 26316, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeMinus = array, U08, 26322, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeLow = array, U08, 26328, [6], "level", 1, 0, 0, 3, 0 -lambdaMaxDeviationTable = array, U08, 26334, [4x4], "lambda", 0.01, 0, 0, 1, 2 -lambdaMaxDeviationLoadBins = array, U16, 26350, [4], "", 1, 0, 0, 1000, 0 -lambdaMaxDeviationRpmBins = array, U16, 26358, [4], "RPM", 1, 0, 0, 18000, 0 -injectorStagingTable = array, U08, 26366, [6x6], "%", 1, 0, 0, 90, 0 -injectorStagingLoadBins = array, U16, 26402, [6], "", 1, 0, 0, 1000, 0 -injectorStagingRpmBins = array, U16, 26414, [6], "RPM", 1, 0, 0, 18000, 0 -; total TS size = 26428 +lambdaLoadBins = array, U16, 21384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 21416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 21448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 21704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 21736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 21768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 22024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 22040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 22056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 22312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 22328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 22344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 22408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 22424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 22440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 22520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 22536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 22556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 22564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 22572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 22588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 22604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 22620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 22636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 22652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 22668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 22684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 22700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 22716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 22732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 22748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 22764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 22772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 22780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 22796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 22812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 22828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 22844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 22860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 22876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 22892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 22908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 22924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 22940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 22956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 22972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 22988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 22996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 23004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 23012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 23020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 23028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 23036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 23044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 23052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 23060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 23068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 23076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 23084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 23092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 23100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 23108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 23116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 23124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 23132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 23168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 23174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 23180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 23216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 23222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 23228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 23260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 23268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 23276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 23308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 23316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 23324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 23356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 23364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 23372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 23500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 23516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 23532, [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, 23533, [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, 23534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 23550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 23560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 23688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 23704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 23720, [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, 23721, [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, 23722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 23738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 23748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 23876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 23892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 23908, [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, 23909, [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, 23910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 23926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 23936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 24064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 24080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 24096, [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, 24097, [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, 24098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 24114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 24124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 24252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 24268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 24284, [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, 24285, [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, 24286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 24302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 24312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 24440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 24456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 24472, [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, 24473, [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, 24474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 24490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 24500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 24628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 24644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 24660, [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, 24661, [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, 24662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 24678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 24688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 24816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 24832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 24848, [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, 24849, [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, 24850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 24866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 24876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 24900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 24924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 25052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 25068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 25084, [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, 25085, [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, 25086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 25102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 25112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 25240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 25256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 25272, [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, 25273, [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, 25274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 25290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 25300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 25428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 25444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 25460, [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, 25461, [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, 25462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 25478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 25488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 25616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 25632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 25648, [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, 25649, [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, 25650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 25666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 25676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 25682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 25688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 25694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 25700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 25706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 25712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 25718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 25724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 25730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 25736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 25742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 25758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 25766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 25774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 25810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 25822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 25834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 25842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 25850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 25858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 25866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 25874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 25882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 25898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 25914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 25922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 25938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 26138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 26158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 26168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 26268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 26288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 26298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 26330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 26346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 26350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 26354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 26358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 26366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 26382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 26390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 26398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 26408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,6 +1666,17 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -1729,6 +1735,7 @@ injectorStagingRpmBins = array, U16, 26414, [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." @@ -1736,7 +1743,6 @@ injectorStagingRpmBins = array, U16, 26414, [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." @@ -1756,12 +1762,11 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -1806,16 +1811,8 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -2137,8 +2134,6 @@ injectorStagingRpmBins = array, U16, 26414, [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." @@ -2238,7 +2233,6 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -2414,6 +2408,7 @@ injectorStagingRpmBins = array, U16, 26414, [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 diff --git a/firmware/tunerstudio/generated/rusefi_proteus_h7.ini b/firmware/tunerstudio/generated/rusefi_proteus_h7.ini index c92db99f64..3960e79d96 100644 --- a/firmware/tunerstudio/generated/rusefi_proteus_h7.ini +++ b/firmware/tunerstudio/generated/rusefi_proteus_h7.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.proteus_h7.475815825" + signature = "rusEFI master.2024.03.20.proteus_h7.1350050841" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.proteus_h7.475815825" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.proteus_h7.1350050841" ; 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="NONE","Analog Volt 5","Analog Volt 6","Analog Volt 7","Analog Volt 8","Analog Volt 9","Analog Volt 10","Analog Volt 11","Battery Sense","Analog Temp 3","Analog Temp 4","Analog Volt 1","Analog Volt 2","Analog Volt 3","Analog Volt 4","Analog Temp 1","Analog Temp 2" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:48 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:18 UTC 2024 -pageSize = 26428 +pageSize = 26408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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, 12000 -cltFuelCorrBins = array, F32, 18316, [16], "C", 1, 0, -100, 250, 2 -cltFuelCorr = array, F32, 18380, [16], "ratio", 1, 0, 0, 5, 2 -iatFuelCorrBins = array, F32, 18444, [16], "C", 1, 0, -100, 250, 2 -iatFuelCorr = array, F32, 18508, [16], "ratio", 1, 0, 0, 5, 2 -crankingFuelCoef = array, F32, 18572, [8], "ratio", 1, 0, 0, 50, 2 -crankingFuelBins = array, F32, 18604, [8], "C", 1, 0, -80, 170, 2 -crankingCycleCoef = array, F32, 18636, [8], "ratio", 1, 0, 0, 5, 2 -crankingCycleBins = array, F32, 18668, [8], "counter", 1, 0, -80, 170, 0 -cltIdleCorrBins = array, F32, 18700, [16], "C", 1, 0, -100, 250, 2 -cltIdleCorr = array, F32, 18764, [16], "ratio", 1, 0, 0, 10, 2 -mafDecoding = array, F32, 18828, [32], "kg/hour", 1, 0, -500, 4000, 2 -mafDecodingBins = array, F32, 18956, [32], "V", 1, 0, -5, 150, 2 -ignitionIatCorrTable = array, S08, 19084, [8x8], "deg", 0.1, 0, -25, 25, 1 -ignitionIatCorrTempBins = array, S08, 19148, [8], "C", 1, 0, -40, 120, 0 -ignitionIatCorrLoadBins = array, U08, 19156, [8], "Load", 5.0, 0, 0, 1000, 0 -injectionPhase = array, S16, 19164, [16x16], "deg", 1, 0, -720, 720, 0 -injPhaseLoadBins = array, U16, 19676, [16], "Load", 1, 0, 0, 1000, 0 -injPhaseRpmBins = array, U16, 19708, [16], "RPM", 1, 0, 0, 18000, 0 -tcuSolenoidTable = array, U08, 19740, [10x6], "onoff", 1, 0, 0, 1, 0 -mapEstimateTable = array, U16, 19800, [16x16], "kPa", 0.01, 0, 0, 600, 2 -mapEstimateTpsBins = array, U16, 20312, [16], "% TPS", 0.01, 0, 0, 100, 1 -mapEstimateRpmBins = array, U16, 20344, [16], "RPM", 1, 0, 0, 18000, 0 -vvtTable1 = array, S08, 20376, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable1LoadBins = array, U16, 20440, [8], "L", 1, 0, 0, 1000, 0 -vvtTable1RpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 -vvtTable2 = array, S08, 20472, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable2LoadBins = array, U16, 20536, [8], "L", 1, 0, 0, 1000, 0 -vvtTable2RpmBins = array, U16, 20552, [8], "RPM", 1, 0, 0, 18000, 0 -ignitionTable = array, S16, 20568, [16x16], "deg", 0.1, 0, -20, 90, 1 -ignitionLoadBins = array, U16, 21080, [16], "Load", 1, 0, 0, 1000, 0 -ignitionRpmBins = array, U16, 21112, [16], "RPM", 1, 0, 0, 18000, 0 -veTable = array, U16, 21144, [16x16], "%", 0.1, 0, 0, 999, 1 -veLoadBins = array, U16, 21656, [16], "kPa", 1, 0, 0, 1000, 0 -veRpmBins = array, U16, 21688, [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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 12000 +cltFuelCorrBins = array, F32, 17724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 17788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 17852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 17916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 17980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 18012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 18044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 18076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 18108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 18172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 18236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 18364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 18492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 18556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 18564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 18572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 19084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 19116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 19148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 19208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 19720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 19752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 19784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 19848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 19864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 19880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 19944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 19960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 19976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 20488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 20520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 20552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 21064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 21096, [16], "RPM", 1, 0, 0, 18000, 0 #if LAMBDA -lambdaTable = array, U08, 21720, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 +lambdaTable = array, U08, 21128, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 #else -lambdaTable = array, U08, 21720, [16x16], "afr", 0.1, 0, 0, 25, 1 +lambdaTable = array, U08, 21128, [16x16], "afr", 0.1, 0, 0, 25, 1 #endif -lambdaLoadBins = array, U16, 21976, [16], "", 1, 0, 0, 1000, 0 -lambdaRpmBins = array, U16, 22008, [16], "RPM", 1, 0, 0, 18000, 0 -tpsTpsAccelTable = array, F32, 22040, [8x8], "value", 1, 0, 0, 30000, 2 -tpsTpsAccelFromRpmBins = array, F32, 22296, [8], "from", 1, 0, 0, 30000, 2 -tpsTpsAccelToRpmBins = array, F32, 22328, [8], "to", 1, 0, 0, 25500, 2 -scriptTable1 = array, F32, 22360, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable1LoadBins = array, S16, 22616, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable1RpmBins = array, S16, 22632, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable2 = array, F32, 22648, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable2LoadBins = array, S16, 22904, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable2RpmBins = array, S16, 22920, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable3 = array, U08, 22936, [8x8], "value", 1, 0, 0, 255, 0 -scriptTable3LoadBins = array, S16, 23000, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable3RpmBins = array, S16, 23016, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable4 = array, U08, 23032, [10x8], "value", 1, 0, 0, 255, 0 -scriptTable4LoadBins = array, S16, 23112, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable4RpmBins = array, S16, 23128, [10], "RPM", 1, 0, -32000, 32000, 0 -ignTrimLoadBins = array, U16, 23148, [4], "", 1, 0, 0, 1000, 0 -ignTrimRpmBins = array, U16, 23156, [4], "rpm", 1, 0, 0, 20000, 0 -ignTrims1_table = array, S08, 23164, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims2_table = array, S08, 23180, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims3_table = array, S08, 23196, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims4_table = array, S08, 23212, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims5_table = array, S08, 23228, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims6_table = array, S08, 23244, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims7_table = array, S08, 23260, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims8_table = array, S08, 23276, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims9_table = array, S08, 23292, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims10_table = array, S08, 23308, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims11_table = array, S08, 23324, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims12_table = array, S08, 23340, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrimLoadBins = array, U16, 23356, [4], "", 1, 0, 0, 1000, 0 -fuelTrimRpmBins = array, U16, 23364, [4], "rpm", 1, 0, 0, 20000, 0 -fuelTrims1_table = array, S08, 23372, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims2_table = array, S08, 23388, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims3_table = array, S08, 23404, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims4_table = array, S08, 23420, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims5_table = array, S08, 23436, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims6_table = array, S08, 23452, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims7_table = array, S08, 23468, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims8_table = array, S08, 23484, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims9_table = array, S08, 23500, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims10_table = array, S08, 23516, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims11_table = array, S08, 23532, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims12_table = array, S08, 23548, [4x4], "", 0.2, 0, -25, 25, 1 -crankingFuelCoefE100 = array, U16, 23564, [8], "ratio", 0.01, 0, 0, 50, 2 -tcu_pcAirmassBins = array, U08, 23580, [8], "Airmass", 0.02, 0, 0, 255, 2 -tcu_pcValsR = array, U08, 23588, [8], "%", 1, 0, 0, 255, 0 -tcu_pcValsN = array, U08, 23596, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals1 = array, U08, 23604, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals2 = array, U08, 23612, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals3 = array, U08, 23620, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals4 = array, U08, 23628, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals12 = array, U08, 23636, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals23 = array, U08, 23644, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals34 = array, U08, 23652, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals21 = array, U08, 23660, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals32 = array, U08, 23668, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals43 = array, U08, 23676, [8], "%", 1, 0, 0, 255, 0 -tcu_tccTpsBins = array, U08, 23684, [8], "TPS", 1, 0, 0, 255, 0 -tcu_tccLockSpeed = array, U08, 23692, [8], "MPH", 1, 0, 0, 255, 0 -tcu_tccUnlockSpeed = array, U08, 23700, [8], "MPH", 1, 0, 0, 255, 0 -tcu_32SpeedBins = array, U08, 23708, [8], "KPH", 1, 0, 0, 255, 0 -tcu_32Vals = array, U08, 23716, [8], "%", 1, 0, 0, 255, 0 -throttle2TrimTable = array, S08, 23724, [6x6], "%", 0.1, 0, -10, 10, 1 -throttle2TrimTpsBins = array, U08, 23760, [6], "%", 1, 0, 0, 120, 0 -throttle2TrimRpmBins = array, U08, 23766, [6], "RPM", 100.0, 0, 0, 25000, 0 -maxKnockRetardTable = array, U08, 23772, [6x6], "deg", 0.25, 0, 0, 30, 2 -maxKnockRetardLoadBins = array, U08, 23808, [6], "%", 1, 0, 0, 250, 0 -maxKnockRetardRpmBins = array, U08, 23814, [6], "RPM", 100.0, 0, 0, 25000, 0 -ALSTimingRetardTable = array, S16, 23820, [4x4], "deg", 0.1, 0, -60, 0, 1 -alsIgnRetardLoadBins = array, U16, 23852, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnRetardrpmBins = array, U16, 23860, [4], "RPM", 1, 0, 0, 25000, 0 -ALSFuelAdjustment = array, S16, 23868, [4x4], "percent", 0.1, 0, 0, 50, 1 -alsFuelAdjustmentLoadBins = array, U16, 23900, [4], "TPS", 1, 0, 0, 100, 0 -alsFuelAdjustmentrpmBins = array, U16, 23908, [4], "RPM", 1, 0, 0, 25000, 0 -ALSIgnSkipTable = array, S16, 23916, [4x4], "ratio", 10.0, 0, 0, 50, 1 -alsIgnSkipLoadBins = array, U16, 23948, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnSkiprpmBins = array, U16, 23956, [4], "RPM", 1, 0, 0, 25000, 0 -ignBlends1_table = array, S16, 23964, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends1_loadBins = array, U16, 24092, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends1_rpmBins = array, U16, 24108, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends1_blendParameter = bits, U08, 24124, [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, 24125, [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, 24126, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends1_blendValues = array, U08, 24142, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends2_table = array, S16, 24152, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends2_loadBins = array, U16, 24280, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends2_rpmBins = array, U16, 24296, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends2_blendParameter = bits, U08, 24312, [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, 24313, [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, 24314, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends2_blendValues = array, U08, 24330, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends3_table = array, S16, 24340, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends3_loadBins = array, U16, 24468, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends3_rpmBins = array, U16, 24484, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends3_blendParameter = bits, U08, 24500, [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, 24501, [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, 24502, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends3_blendValues = array, U08, 24518, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends4_table = array, S16, 24528, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends4_loadBins = array, U16, 24656, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends4_rpmBins = array, U16, 24672, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends4_blendParameter = bits, U08, 24688, [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, 24689, [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, 24690, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends4_blendValues = array, U08, 24706, [8], "%", 0.5, 0, 0, 100, 1 -veBlends1_table = array, S16, 24716, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends1_loadBins = array, U16, 24844, [8], "Load", 1, 0, 0, 1000, 0 -veBlends1_rpmBins = array, U16, 24860, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends1_blendParameter = bits, U08, 24876, [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, 24877, [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, 24878, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends1_blendValues = array, U08, 24894, [8], "%", 0.5, 0, 0, 100, 1 -veBlends2_table = array, S16, 24904, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends2_loadBins = array, U16, 25032, [8], "Load", 1, 0, 0, 1000, 0 -veBlends2_rpmBins = array, U16, 25048, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends2_blendParameter = bits, U08, 25064, [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, 25065, [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, 25066, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends2_blendValues = array, U08, 25082, [8], "%", 0.5, 0, 0, 100, 1 -veBlends3_table = array, S16, 25092, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends3_loadBins = array, U16, 25220, [8], "Load", 1, 0, 0, 1000, 0 -veBlends3_rpmBins = array, U16, 25236, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends3_blendParameter = bits, U08, 25252, [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, 25253, [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, 25254, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends3_blendValues = array, U08, 25270, [8], "%", 0.5, 0, 0, 100, 1 -veBlends4_table = array, S16, 25280, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends4_loadBins = array, U16, 25408, [8], "Load", 1, 0, 0, 1000, 0 -veBlends4_rpmBins = array, U16, 25424, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends4_blendParameter = bits, U08, 25440, [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, 25441, [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, 25442, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends4_blendValues = array, U08, 25458, [8], "%", 0.5, 0, 0, 100, 1 -throttleEstimateEffectiveAreaBins = array, U16, 25468, [12], "%", 0.1, 0, 0, 100, 1 -throttleEstimateEffectiveAreaValues = array, U16, 25492, [12], "g/s", 0.1, 0, 0, 6500, 1 -boostOpenLoopBlends1_table = array, S16, 25516, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends1_loadBins = array, U16, 25644, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends1_rpmBins = array, U16, 25660, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends1_blendParameter = bits, U08, 25676, [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, 25677, [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, 25678, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends1_blendValues = array, U08, 25694, [8], "%", 0.5, 0, 0, 100, 1 -boostOpenLoopBlends2_table = array, S16, 25704, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends2_loadBins = array, U16, 25832, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends2_rpmBins = array, U16, 25848, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends2_blendParameter = bits, U08, 25864, [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, 25865, [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, 25866, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends2_blendValues = array, U08, 25882, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends1_table = array, S16, 25892, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends1_loadBins = array, U16, 26020, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends1_rpmBins = array, U16, 26036, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends1_blendParameter = bits, U08, 26052, [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, 26053, [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, 26054, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends1_blendValues = array, U08, 26070, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends2_table = array, S16, 26080, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends2_loadBins = array, U16, 26208, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends2_rpmBins = array, U16, 26224, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends2_blendParameter = bits, U08, 26240, [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, 26241, [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, 26242, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends2_blendValues = array, U08, 26258, [8], "%", 0.5, 0, 0, 100, 1 -tcu_rangeP = array, U08, 26268, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeR = array, U08, 26274, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeN = array, U08, 26280, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeD = array, U08, 26286, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM = array, U08, 26292, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM3 = array, U08, 26298, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM2 = array, U08, 26304, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM1 = array, U08, 26310, [6], "level", 1, 0, 0, 3, 0 -tcu_rangePlus = array, U08, 26316, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeMinus = array, U08, 26322, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeLow = array, U08, 26328, [6], "level", 1, 0, 0, 3, 0 -lambdaMaxDeviationTable = array, U08, 26334, [4x4], "lambda", 0.01, 0, 0, 1, 2 -lambdaMaxDeviationLoadBins = array, U16, 26350, [4], "", 1, 0, 0, 1000, 0 -lambdaMaxDeviationRpmBins = array, U16, 26358, [4], "RPM", 1, 0, 0, 18000, 0 -injectorStagingTable = array, U08, 26366, [6x6], "%", 1, 0, 0, 90, 0 -injectorStagingLoadBins = array, U16, 26402, [6], "", 1, 0, 0, 1000, 0 -injectorStagingRpmBins = array, U16, 26414, [6], "RPM", 1, 0, 0, 18000, 0 -; total TS size = 26428 +lambdaLoadBins = array, U16, 21384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 21416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 21448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 21704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 21736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 21768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 22024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 22040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 22056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 22312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 22328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 22344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 22408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 22424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 22440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 22520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 22536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 22556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 22564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 22572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 22588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 22604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 22620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 22636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 22652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 22668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 22684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 22700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 22716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 22732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 22748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 22764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 22772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 22780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 22796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 22812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 22828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 22844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 22860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 22876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 22892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 22908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 22924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 22940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 22956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 22972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 22988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 22996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 23004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 23012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 23020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 23028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 23036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 23044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 23052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 23060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 23068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 23076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 23084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 23092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 23100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 23108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 23116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 23124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 23132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 23168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 23174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 23180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 23216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 23222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 23228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 23260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 23268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 23276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 23308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 23316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 23324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 23356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 23364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 23372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 23500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 23516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 23532, [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, 23533, [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, 23534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 23550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 23560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 23688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 23704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 23720, [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, 23721, [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, 23722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 23738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 23748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 23876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 23892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 23908, [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, 23909, [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, 23910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 23926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 23936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 24064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 24080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 24096, [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, 24097, [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, 24098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 24114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 24124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 24252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 24268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 24284, [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, 24285, [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, 24286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 24302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 24312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 24440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 24456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 24472, [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, 24473, [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, 24474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 24490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 24500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 24628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 24644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 24660, [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, 24661, [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, 24662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 24678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 24688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 24816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 24832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 24848, [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, 24849, [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, 24850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 24866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 24876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 24900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 24924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 25052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 25068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 25084, [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, 25085, [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, 25086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 25102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 25112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 25240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 25256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 25272, [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, 25273, [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, 25274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 25290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 25300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 25428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 25444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 25460, [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, 25461, [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, 25462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 25478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 25488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 25616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 25632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 25648, [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, 25649, [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, 25650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 25666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 25676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 25682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 25688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 25694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 25700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 25706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 25712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 25718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 25724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 25730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 25736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 25742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 25758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 25766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 25774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 25810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 25822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 25834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 25842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 25850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 25858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 25866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 25874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 25882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 25898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 25914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 25922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 25938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 26138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 26158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 26168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 26268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 26288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 26298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 26330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 26346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 26350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 26354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 26358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 26366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 26382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 26390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 26398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 26408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,6 +1666,17 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -1729,6 +1735,7 @@ injectorStagingRpmBins = array, U16, 26414, [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." @@ -1736,7 +1743,6 @@ injectorStagingRpmBins = array, U16, 26414, [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." @@ -1756,12 +1762,11 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -1806,16 +1811,8 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -2137,8 +2134,6 @@ injectorStagingRpmBins = array, U16, 26414, [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." @@ -2238,7 +2233,6 @@ injectorStagingRpmBins = array, U16, 26414, [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" @@ -2414,6 +2408,7 @@ injectorStagingRpmBins = array, U16, 26414, [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 diff --git a/firmware/tunerstudio/generated/rusefi_s105.ini b/firmware/tunerstudio/generated/rusefi_s105.ini index 61b23f1e34..3ce85ab8fb 100644 --- a/firmware/tunerstudio/generated/rusefi_s105.ini +++ b/firmware/tunerstudio/generated/rusefi_s105.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.s105.1248868772" + signature = "rusEFI master.2024.03.20.s105.106185260" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.s105.1248868772" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.s105.106185260" ; 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="NONE","56 - MAP","16 - TPS","19 - Knock","39 - CLT","INVALID","opt 55 - AFR 2","opt 21 - AC Press","18 - AFR 1","13 - Ignition switch in (15)","44 - +12 sense (MR)","INVALID","na 37 - MAF","INVALID","INVALID","40 - IAT" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:42 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:12 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_small-can-board.ini b/firmware/tunerstudio/generated/rusefi_small-can-board.ini index b2ff2a8f66..ccbe6467f9 100644 --- a/firmware/tunerstudio/generated/rusefi_small-can-board.ini +++ b/firmware/tunerstudio/generated/rusefi_small-can-board.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.small-can-board.3411703279" + signature = "rusEFI master.2024.03.20.small-can-board.2273185383" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.small-can-board.3411703279" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.small-can-board.2273185383" ; 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="NONE","INVALID","INVALID","B2 - Analog/Digital Input","B3 - Analog/Digital Input","B4 - Analog/Digital Input","B5 - Analog/Digital Input","B7 - Analog/Digital Input","C1 - Analog/Digital Input 6","INVALID","INVALID","INVALID","A2 Battery Sense","INVALID","INVALID","C2 - Analog/Digital Input 7","C4 - Analog/Digital Input 8" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:31 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:01 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_stm32f429_nucleo.ini b/firmware/tunerstudio/generated/rusefi_stm32f429_nucleo.ini index 0842b33916..a98c75587c 100644 --- a/firmware/tunerstudio/generated/rusefi_stm32f429_nucleo.ini +++ b/firmware/tunerstudio/generated/rusefi_stm32f429_nucleo.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.stm32f429_nucleo.4126914918" + signature = "rusEFI master.2024.03.20.stm32f429_nucleo.3118449390" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.stm32f429_nucleo.4126914918" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.stm32f429_nucleo.3118449390" ; 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 Wed Mar 20 15:35:41 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:11 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_stm32f767_nucleo.ini b/firmware/tunerstudio/generated/rusefi_stm32f767_nucleo.ini index 38bc2e30c1..e9ae098f9f 100644 --- a/firmware/tunerstudio/generated/rusefi_stm32f767_nucleo.ini +++ b/firmware/tunerstudio/generated/rusefi_stm32f767_nucleo.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.stm32f767_nucleo.4126914918" + signature = "rusEFI master.2024.03.20.stm32f767_nucleo.3118449390" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.stm32f767_nucleo.4126914918" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.stm32f767_nucleo.3118449390" ; 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 Wed Mar 20 15:36:05 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:34 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_stm32h743_nucleo.ini b/firmware/tunerstudio/generated/rusefi_stm32h743_nucleo.ini index 556c6aaacb..9c38ee5a45 100644 --- a/firmware/tunerstudio/generated/rusefi_stm32h743_nucleo.ini +++ b/firmware/tunerstudio/generated/rusefi_stm32h743_nucleo.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.stm32h743_nucleo.4126914918" + signature = "rusEFI master.2024.03.20.stm32h743_nucleo.3118449390" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.stm32h743_nucleo.4126914918" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.stm32h743_nucleo.3118449390" ; 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 Wed Mar 20 15:36:10 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:39 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_t-b-g.ini b/firmware/tunerstudio/generated/rusefi_t-b-g.ini index 65e2fcdd6c..ecede3fd21 100644 --- a/firmware/tunerstudio/generated/rusefi_t-b-g.ini +++ b/firmware/tunerstudio/generated/rusefi_t-b-g.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.t-b-g.4126914918" + signature = "rusEFI master.2024.03.20.t-b-g.3118449390" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.t-b-g.4126914918" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.t-b-g.3118449390" ; 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 Wed Mar 20 15:36:14 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:43 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_tdg-pdm8.ini b/firmware/tunerstudio/generated/rusefi_tdg-pdm8.ini index 19b5cea5b3..e5fb833e14 100644 --- a/firmware/tunerstudio/generated/rusefi_tdg-pdm8.ini +++ b/firmware/tunerstudio/generated/rusefi_tdg-pdm8.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.tdg-pdm8.2136315204" + signature = "rusEFI master.2024.03.20.tdg-pdm8.863104716" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.tdg-pdm8.2136315204" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.tdg-pdm8.863104716" ; 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="NONE","INVALID","INVALID","INVALID","INVALID","Battery Sense","INVALID","INVALID","INVALID","Sense 7","Sense 8","Sense 1","Sense 2","Sense 3","Sense 4","Sense 5","Sense 6" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:36:18 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:47 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/firmware/tunerstudio/generated/rusefi_uaefi.ini b/firmware/tunerstudio/generated/rusefi_uaefi.ini index 4c932c1c9d..bcea77ed8c 100644 --- a/firmware/tunerstudio/generated/rusefi_uaefi.ini +++ b/firmware/tunerstudio/generated/rusefi_uaefi.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI master.2024.03.20.uaefi.2407646301" + signature = "rusEFI master.2024.03.20.uaefi.3282419669" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI master.2024.03.20.uaefi.2407646301" ; signature is expected to be 7 or more characters. + signature= "rusEFI master.2024.03.20.uaefi.3282419669" ; 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="NONE","D1 AUX1","C3 AUX2","INVALID","D6 PPS1","D13 TPS1","A7 Voltage From Key","INVALID","C15 Fuel Pressure / AUX3","C14 TPS2","INVALID","D9 MAP","On-board MAP","D16 CLT Coolant","D15 IAT","C4 PPS2" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:35:19 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:08:48 UTC 2024 -pageSize = 22428 +pageSize = 22408 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,1449 +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 -fancyOptions1 = scalar, U08, 5820, "", 1, 0, 0, 255, 0 -fancyOptions2 = scalar, U08, 5821, "", 1, 0, 0, 255, 0 -fancyOptions3 = scalar, U08, 5822, "", 1, 0, 0, 255, 0 -fancyOptions4 = scalar, U08, 5823, "", 1, 0, 0, 255, 0 -fancyOptions5 = scalar, U08, 5824, "", 1, 0, 0, 255, 0 -fancyOptions6 = scalar, U08, 5825, "", 1, 0, 0, 255, 0 -fancyOptions7 = scalar, U08, 5826, "", 1, 0, 0, 255, 0 -fancyOptions8 = scalar, U08, 5827, "", 1, 0, 0, 255, 0 -fancyOptions9 = scalar, U08, 5828, "", 1, 0, 0, 255, 0 -fancyOptions10 = scalar, U08, 5829, "", 1, 0, 0, 255, 0 -fancyOptions11 = scalar, U08, 5830, "", 1, 0, 0, 255, 0 -fancyOptions12 = scalar, U08, 5831, "", 1, 0, 0, 255, 0 -fancyOptions13 = scalar, U08, 5832, "", 1, 0, 0, 255, 0 -fancyOptions14 = scalar, U08, 5833, "", 1, 0, 0, 255, 0 -fancyOptions15 = scalar, U08, 5834, "", 1, 0, 0, 255, 0 -fancyOptions16 = scalar, U08, 5835, "", 1, 0, 0, 255, 0 -unusedGapInCalibration = array, U08, 5836, [112], "", 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 +tunerStudioSerialSpeed = scalar, U16, 730, "BPs", 1, 0, 0, 1000000, 0 +tcuInputSpeedSensorPin = bits, U16, 732, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 734, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 736, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 738, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 740, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 743, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 744, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 746, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 748, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 749, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 750, "%", 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 +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 +lambdaProtectionRestoreRpm = scalar, U08, 864, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 865, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 900, [0:7], $gpio_list +spi1misoPin = bits, U16, 902, [0:7], $gpio_list +spi1sckPin = bits, U16, 904, [0:7], $gpio_list +spi2mosiPin = bits, U16, 906, [0:7], $gpio_list +spi2misoPin = bits, U16, 908, [0:7], $gpio_list +spi2sckPin = bits, U16, 910, [0:7], $gpio_list +spi3mosiPin = bits, U16, 912, [0:7], $gpio_list +spi3misoPin = bits, U16, 914, [0:7], $gpio_list +spi3sckPin = bits, U16, 916, [0:7], $gpio_list +cdmInputPin = bits, U16, 918, [0:7], $gpio_list +consoleUartDevice = bits, U08, 920, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 921, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 922, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 924, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 924, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 924, [2:2], "false", "true" +multisparkEnable = bits, U32, 924, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 924, [4:4], "false", "true" +canInputBCM = bits, U32, 924, [5:5], "false", "true" +consumeObdSensors = bits, U32, 924, [6:6], "false", "true" +enableCanVss = bits, U32, 924, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 924, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 924, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 924, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 924, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 924, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 924, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 924, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 924, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 924, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 924, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 924, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 924, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 924, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 924, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 924, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 924, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 924, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 924, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 924, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 924, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 924, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 924, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 924, [30:30], "false", "true" +verboseCan2 = bits, U32, 924, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 928, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 930, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 932, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 934, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 936, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 938, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 940, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 942, [0:7], $gpio_list +boostControlPin = bits, U16, 944, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 946, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 948, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 950, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 960, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 964, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 966, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 968, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 970, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 972, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 973, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 974, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 976, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 980, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 981, [0:0], "Switch Input", "Always Active" +launchSpeedThreshold = scalar, S32, 984, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 988, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 996, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1004, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1008, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1012, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1016, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1017, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1018, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1019, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1020, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1021, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1022, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1023, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1036, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1037, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1038, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1050, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1052, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1054, [0:7], $gpio_list +engineMake = string, ASCII, 1056, 32 +engineCode = string, ASCII, 1088, 32 +vehicleName = string, ASCII, 1120, 32 +tcu_solenoid1 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1158, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1160, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1162, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1164, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1165, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1166, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1168, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1170, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1172, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1184, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1186, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1188, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1204, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1208, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1214, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1220, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1224, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1230, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1236, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1240, 16 +gpPwmNote2 = string, ASCII, 1256, 16 +gpPwmNote3 = string, ASCII, 1272, 16 +gpPwmNote4 = string, ASCII, 1288, 16 +tps2SecondaryMin = scalar, U16, 1304, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1306, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1308, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1308, [1:1], "false", "true" +oddFireEngine = bits, U32, 1308, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1308, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1308, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1308, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1308, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1308, [7:7], "false", "true" +canReadEnabled = bits, U32, 1308, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1308, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1308, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1308, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1308, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1308, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1308, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1308, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1308, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1308, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1308, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1308, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1308, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1308, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1308, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1308, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1308, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1308, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1308, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1308, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1308, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1308, [29:29], "false", "true" +twoStroke = bits, U32, 1308, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1308, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1314, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1316, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1317, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1318, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1320, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1320, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1320, [2:2], "false", "true" +complexWallModel = bits, U32, 1320, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1320, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1320, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1320, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1320, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1320, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1320, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1320, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1320, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1320, [12:12], "false", "true" +hondaK = bits, U32, 1320, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1320, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1320, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1320, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1320, [17:17], "false", "true" +flexCranking = bits, U32, 1320, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1320, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1320, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1320, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1320, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1320, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1320, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1320, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1320, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1320, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1320, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1320, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1320, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1320, [31:31], "false", "true" +engineChartSize = scalar, U32, 1324, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1328, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1334, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1336, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1338, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1340, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1342, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1348, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1352, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1356, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1360, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1364, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1368, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1372, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1384, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1388, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1390, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1392, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1394, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1404, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1408, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1410, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1412, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1414, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1416, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1418, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1420, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1422, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1424, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1426, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1428, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1430, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1432, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1434, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1436, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1440, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1444, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1446, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1460, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1462, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1464, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1466, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1468, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1472, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1474, [0:7], $gpio_list +auxValves1 = bits, U16, 1476, [0:7], $gpio_list +auxValves2 = bits, U16, 1478, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1480, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1482, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1488, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1492, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1494, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1496, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1500, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1500, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1500, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1500, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1500, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1500, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1500, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1500, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1500, [8:8], "false", "true" +fancySmartS = bits, U32, 1500, [9:9], "false", "true" +fancySmartL = bits, U32, 1500, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1500, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1500, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1500, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1500, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1500, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1504, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1506, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1508, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1510, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1512, [0:7], $gpio_list +tpsAccelLookback = scalar, U08, 1514, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1515, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1516, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1517, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1520, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1524, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1526, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1528, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1529, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1530, [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, 1531, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1532, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1536, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1540, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1544, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1548, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1552, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1556, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1557, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1558, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1559, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1560, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1561, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1562, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1563, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1564, [0:0], "false", "true" +canOpenBLT = bits, U32, 1564, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1564, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1564, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1564, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1564, [5:5], "false", "true" +can1ListenMode = bits, U32, 1564, [6:6], "false", "true" +can2ListenMode = bits, U32, 1564, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1568, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1569, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1570, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1572, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1573, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1576, [0:7], $gpio_list +can2RxPin = bits, U16, 1578, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1580, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1581, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1582, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1583, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1584, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1586, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1588, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1592, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1608, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1624, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1628, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1632, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1636, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1640, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1642, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1644, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1646, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1648, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1660, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1664, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1668, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1670, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1671, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1672, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1676, [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, 1677, [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, 1678, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1679, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1680, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1681, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1682, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1683, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1684, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1685, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1686, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1687, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1702, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1704, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1706, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1708, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1710, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1712, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1713, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1714, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1715, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1716, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1720, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1864, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1888, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1916, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1920, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1928, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1932, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1936, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1940, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1948, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1952, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1960, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1964, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1968, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1972, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1976, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1978, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1984, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1988, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1992, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1994, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1996, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1998, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 2000, [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, 2001, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 2002, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 2003, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2044, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2048, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2052, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = 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" +spi1MosiMode = bits, U08, 2057, [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, 2058, [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, 2059, [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, 2060, [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, 2061, [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, 2062, [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, 2063, [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, 2064, [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, 2065, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2066, [0:7], $gpio_list +mc33816_driven = bits, U16, 2068, [0:7], $gpio_list +brakePedalPin = bits, U16, 2070, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2076, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2080, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2084, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2086, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2088, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2090, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2096, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2100, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2104, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2106, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2108, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2110, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2136, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2140, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2144, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2152, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2164, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2168, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2172, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2174, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2176, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2177, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2178, [0:7], $gpio_list +tle8888_cs = bits, U16, 2180, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2182, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2184, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2188, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2192, [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, 2194, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2196, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2198, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2200, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2202, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2204, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2208, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2220, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2224, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2228, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2248, 16 +scriptCurveName2 = string, ASCII, 2264, 16 +scriptCurveName3 = string, ASCII, 2280, 16 +scriptCurveName4 = string, ASCII, 2296, 16 +scriptCurveName5 = string, ASCII, 2312, 16 +scriptCurveName6 = string, ASCII, 2328, 16 +scriptTableName1 = string, ASCII, 2344, 16 +scriptTableName2 = string, ASCII, 2360, 16 +scriptTableName3 = string, ASCII, 2376, 16 +scriptTableName4 = string, ASCII, 2392, 16 +scriptSettingName1 = string, ASCII, 2408, 16 +scriptSettingName2 = string, ASCII, 2424, 16 +scriptSettingName3 = string, ASCII, 2440, 16 +scriptSettingName4 = string, ASCII, 2456, 16 +scriptSettingName5 = string, ASCII, 2472, 16 +scriptSettingName6 = string, ASCII, 2488, 16 +scriptSettingName7 = string, ASCII, 2504, 16 +scriptSettingName8 = string, ASCII, 2520, 16 +tChargeAirCoefMin = scalar, F32, 2536, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2540, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2544, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2548, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2552, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2556, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2560, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2562, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2568, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2572, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2576, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2578, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2580, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2582, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2584, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2588, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2590, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2592, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2596, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2597, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2598, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2600, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2601, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2602, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2604, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2612, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2613, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2614, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2615, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2616, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2617, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2618, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2619, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2620, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2628, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2629, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2630, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2631, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2632, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2644, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2650, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2651, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2652, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2656, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2658, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2660, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2662, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2663, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2664, [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, 2665, [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, 2666, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2682, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2698, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2764, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 +gppwm2_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" +gppwm2_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" +gppwm2_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2872, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 +gppwm3_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" +gppwm3_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" +gppwm3_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2980, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 +gppwm4_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" +gppwm4_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" +gppwm4_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3088, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3090, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3092, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3098, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3100, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3102, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3104, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3106, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3107, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3108, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3109, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3110, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3111, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3112, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3113, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3114, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3260, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3261, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3262, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3263, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3264, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3266, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3267, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3268, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3269, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3270, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3272, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3274, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3275, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3276, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3278, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3280, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3282, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3284, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3286, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3288, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3302, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3304, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3306, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3308, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3310, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3312, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3348, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3360, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3372, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3373, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3374, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3376, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3388, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3392, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3396, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3408, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3412, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3416, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3418, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3420, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3422, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3424, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3426, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3428, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3430, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3432, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3434, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3436, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3438, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3440, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3444, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3446, 17 +highSpeedOffsets = array, U16, 3464, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3528, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3538, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3540, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3542, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3544, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3546, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3548, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3550, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3552, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3553, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3554, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3555, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3556, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3557, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3558, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3560, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3564, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3568, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3572, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3574, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3575, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3576, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3577, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3578, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3579, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3580, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3581, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3582, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3583, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3584, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3586, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3588, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3589, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3590, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3592, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3594, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3595, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3596, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3597, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3598, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3600, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3601, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3612, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3616, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3617, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3622, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3624, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3626, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3628, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3630, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3631, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3632, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3633, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3634, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3635, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3636, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3644, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3648, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3656, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3660, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3664, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3668, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3676, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3680, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3688, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3692, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3696, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3700, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3708, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3712, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3720, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3724, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3728, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3732, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3740, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3744, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3752, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3756, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3760, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3764, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3768, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3769, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3770, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3772, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3774, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3776, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3778, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3779, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3780, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3781, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3782, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3783, [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, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3808, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3812, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3816, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3852, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3853, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3854, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3870, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3872, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3874, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3876, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3878, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3880, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3916, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3952, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3956, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3960, [0:7], $gpio_list +spi4misoPin = bits, U16, 3962, [0:7], $gpio_list +spi4sckPin = bits, U16, 3964, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3966, [0:7], $gpio_list +spi5misoPin = bits, U16, 3968, [0:7], $gpio_list +spi5sckPin = bits, U16, 3970, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3972, [0:7], $gpio_list +spi6misoPin = bits, U16, 3974, [0:7], $gpio_list +spi6sckPin = bits, U16, 3976, [0:7], $gpio_list +spi4SckMode = bits, U08, 3978, [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, 3979, [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, 3980, [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, 3981, [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, 3982, [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, 3983, [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, 3984, [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, 3985, [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, 3986, [240], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4228, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4260, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4292, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4356, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4364, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4372, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4388, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4404, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4420, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4436, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4468, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4500, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4564, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4628, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4692, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4756, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4788, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4820, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4852, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4884, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4916, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4948, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4980, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5012, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5028, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5044, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5108, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5140, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5172, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5180, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5188, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5204, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5220, 120 +fancyOptions1 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5348, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5349, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5350, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5351, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5352, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5353, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5354, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5355, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5356, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5420, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5428, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5492, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5500, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5564, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5572, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5580, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5612, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5644, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5652, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5684, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5688, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5692, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5724, 8000 +cltFuelCorrBins = array, F32, 13724, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13788, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13852, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13916, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13980, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14012, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14044, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14076, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14108, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14172, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14236, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14364, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14492, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14556, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14564, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14572, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15084, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15116, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15148, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15208, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15720, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15752, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15784, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15848, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15864, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15880, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15944, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15960, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15976, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16488, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16520, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16552, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17064, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17096, [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, 17128, [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, 17128, [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, 17384, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17416, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17448, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17704, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17736, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17768, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18024, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18040, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18056, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18312, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18328, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18344, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18408, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18424, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18440, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18520, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18536, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18556, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18564, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18572, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18588, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18604, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18620, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18636, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18652, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18668, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18684, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18700, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18716, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18732, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18748, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18764, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18772, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18780, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18796, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18812, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18828, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18844, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18860, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18876, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18892, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18908, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18924, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18940, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18956, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18972, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18988, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19084, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19092, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19108, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19116, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19124, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19132, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19168, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19174, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19180, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19216, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19222, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19228, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19260, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19268, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19276, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19308, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19316, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19324, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19356, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19364, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19372, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19500, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19516, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19532, [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, 19533, [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, 19534, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19550, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19560, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19688, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19704, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19720, [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, 19721, [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, 19722, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19738, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19748, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19876, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19892, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19908, [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, 19909, [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, 19910, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19926, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19936, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20064, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20080, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20096, [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, 20097, [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, 20098, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20114, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20124, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20252, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20268, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20284, [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, 20285, [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, 20286, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20302, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20312, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20440, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20456, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20472, [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, 20473, [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, 20474, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20490, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20500, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20628, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20644, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20660, [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, 20661, [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, 20662, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20678, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20688, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20816, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20832, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20848, [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, 20849, [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, 20850, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20866, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20876, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20900, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20924, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21052, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21068, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21084, [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, 21085, [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, 21086, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21102, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21112, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21240, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21256, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21272, [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, 21273, [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, 21274, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21290, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21300, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21428, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21444, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21460, [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, 21461, [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, 21462, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21478, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21488, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21616, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21632, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21648, [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, 21649, [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, 21650, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21666, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21676, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21682, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21688, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21694, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21700, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21706, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21712, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21718, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21724, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21730, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21736, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21742, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21758, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21766, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21774, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21810, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21822, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21834, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21850, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21858, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21874, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21882, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21898, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21914, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21922, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21938, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22138, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22158, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22168, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22268, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22288, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22298, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22330, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22346, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22350, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22354, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22358, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22366, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22382, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22390, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22398, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22408 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1671,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" @@ -1729,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." @@ -1736,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." @@ -1756,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" @@ -1806,16 +1811,8 @@ 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" @@ -2137,8 +2134,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." @@ -2238,7 +2233,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" @@ -2414,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 diff --git a/java_console/models/src/main/java/com/rusefi/config/generated/Fields.java b/java_console/models/src/main/java/com/rusefi/config/generated/Fields.java index c6ac6bac3d..0b8beac28f 100644 --- a/java_console/models/src/main/java/com/rusefi/config/generated/Fields.java +++ b/java_console/models/src/main/java/com/rusefi/config/generated/Fields.java @@ -1,6 +1,6 @@ package com.rusefi.config.generated; -// this file was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 15:36:20 UTC 2024 +// this file was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Wed Mar 20 21:09:50 UTC 2024 // by class com.rusefi.output.FileJavaFieldsConsumer import com.rusefi.config.*; @@ -291,7 +291,7 @@ public class Fields { public static final int ego_sensor_e_ES_Innovate_MTX_L = 1; public static final int ego_sensor_e_ES_PLX = 4; public static final int EGT_CHANNEL_COUNT = 8; - public static final int engine_configuration_s_size = 4708; + public static final int engine_configuration_s_size = 4228; public static final int engine_load_mode_e_LM_ALPHA_N = 2; public static final int engine_load_mode_e_LM_LUA = 3; public static final int engine_load_mode_e_LM_MOCK = 100; @@ -421,7 +421,7 @@ public class Fields { public static final int ETB_COUNT = 2; public static final int ETB_HW_MAX_FREQUENCY = 3000; public static final int FANCY_OPTIONS_COUNT = 16; - public static final int FLASH_DATA_VERSION = 20014; + public static final int FLASH_DATA_VERSION = 20015; public static final int FUEL_LEVEL_TABLE_COUNT = 8; public static final int FUEL_LOAD_COUNT = 16; public static final int fuel_pressure_sensor_mode_e_FPM_Absolute = 0; @@ -1057,7 +1057,7 @@ public class Fields { public static final int PACK_MULT_VOLTAGE = 1000; public static final int PACK_MULT_VSS = 100; public static final int PEDAL_TO_TPS_SIZE = 8; - public static final int persistent_config_s_size = 22428; + public static final int persistent_config_s_size = 22408; public static final int pid_s_size = 20; public static final int pin_input_mode_e_PI_DEFAULT = 0; public static final int pin_input_mode_e_PI_PULLDOWN = 2; @@ -1123,7 +1123,7 @@ public class Fields { public static final int SentEtbType_FORD_TYPE_1 = 2; public static final int SentEtbType_GM_TYPE_1 = 1; public static final int SentEtbType_NONE = 0; - public static final int SIGNATURE_HASH = 1370112519; + public static final int SIGNATURE_HASH = 495860111; public static final String SIMULATOR_TUNE_BIN_FILE_NAME = "generated/simulator_tune_image.bin"; public static final String SIMULATOR_TUNE_BIN_FILE_NAME_PREFIX = "generated/simulator_tune_image"; public static final String SIMULATOR_TUNE_BIN_FILE_NAME_SUFFIX = ".bin"; @@ -1170,7 +1170,7 @@ public class Fields { public static final int TOOTH_PACKET_SIZE = 2; public static final String TOP_DEAD_CENTER_MESSAGE = "r"; public static final int TORQUE_CURVE_SIZE = 6; - public static final int TOTAL_CONFIG_SIZE = 22428; + public static final int TOTAL_CONFIG_SIZE = 22408; public static final int TPS_2_BYTE_PACKING_MULT = 100; public static final int TPS_TPS_ACCEL_CLT_CORR_TABLE = 4; public static final int TPS_TPS_ACCEL_TABLE = 8; @@ -1343,7 +1343,7 @@ public class Fields { public static final int TS_COMPOSITE_READ = 3; public static final char TS_CRC_CHECK_COMMAND = 'k'; public static final char TS_EXECUTE = 'E'; - public static final int TS_FILE_VERSION = 20230721; + public static final int TS_FILE_VERSION = 20240101; public static final int TS_FILE_VERSION_OFFSET = 124; public static final char TS_GET_COMPOSITE_BUFFER_DONE_DIFFERENTLY = '8'; public static final char TS_GET_CONFIG_ERROR = 'e'; @@ -1374,7 +1374,7 @@ public class Fields { public static final int TS_RESPONSE_UNDERRUN = 0x80; public static final int TS_RESPONSE_UNRECOGNIZED_COMMAND = 0x83; public static final char TS_SET_LOGGER_SWITCH = 'l'; - public static final String TS_SIGNATURE = "rusEFI master.2024.03.20.f407-discovery.1370112519"; + public static final String TS_SIGNATURE = "rusEFI master.2024.03.20.f407-discovery.495860111"; public static final char TS_SIMULATE_CAN = '>'; public static final char TS_SINGLE_WRITE_COMMAND = 'W'; public static final char TS_TEST_COMMAND = 't'; @@ -1452,10 +1452,28 @@ public class Fields { public static final Field MAXACRPM = Field.create("MAXACRPM", 13, FieldType.INT8).setScale(50.0).setBaseOffset(0); public static final Field MAXACTPS = Field.create("MAXACTPS", 14, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final Field MAXACCLT = Field.create("MAXACCLT", 15, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field KNOCKNOISERPMBINS = Field.create("KNOCKNOISERPMBINS", 16, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field COMPRESSIONRATIO = Field.create("COMPRESSIONRATIO", 16, FieldType.FLOAT).setBaseOffset(0); + public static final Field WASTEGATEPOSITIONMIN = Field.create("WASTEGATEPOSITIONMIN", 20, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field WASTEGATEPOSITIONMAX = Field.create("WASTEGATEPOSITIONMAX", 22, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLEPOSITIONMIN = Field.create("IDLEPOSITIONMIN", 24, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLEPOSITIONMAX = Field.create("IDLEPOSITIONMAX", 26, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final String[] output_pin_e = {"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", "MC33972_1", "MC33972_2", "MC33972_3", "MC33972_4", "MC33972_5", "MC33972_6", "MC33972_7", "MC33972_8", "MC33972_9", "MC33972_10", "MC33972_11", "MC33972_12", "MC33972_13", "MC33972_14", "MC33972_15", "MC33972_16", "MC33972_17", "MC33972_18", "MC33972_19", "MC33972_20", "MC33972_21", "MC33972_22", "TLE8888_1", "TLE8888_2", "TLE8888_3", "TLE8888_4", "TLE8888_5", "TLE8888_6", "TLE8888_7", "TLE8888_8", "TLE8888_9", "TLE8888_10", "TLE8888_11", "TLE8888_12", "TLE8888_13", "TLE8888_14", "TLE8888_15", "TLE8888_16", "TLE8888_17", "TLE8888_18", "TLE8888_19", "TLE8888_20", "TLE8888_21", "TLE8888_22", "TLE8888_23", "TLE8888_24", "TLE8888_25", "TLE8888_26", "TLE8888_27", "TLE8888_28", "INVALID", "INVALID", "INVALID", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16", "L215", "L216", "L217", "L218", "L219", "L220", "L221", "L222", "L223", "L224", "L225", "L226", "L227", "L228", "L229", "L230", "L231", "L232", "L233", "L234", "L235", "L236", "L237", "L238", "L239", "L240", "L241", "L242", "L243", "L244", "L245", "L246", "L247", "L248", "can0", "can1", "can2", "can3", "can4", "can5", "can6", "can7", "protected_0", "protected_1", "protected_2", "protected_3", "protected_4", "protected_5", "protected_6", "protected_7", "protected_8", "protected_9", "protected_10", "protected_11", "protected_12", "protected_13", "protected_14", "protected_15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "MC33810_0_OUT_0", "MC33810_0_OUT_1", "MC33810_0_OUT_2", "MC33810_0_OUT_3", "MC33810_0_GD_0", "MC33810_0_GD_1", "MC33810_0_GD_2", "MC33810_0_GD_3"}; + public static final Field MAINRELAYPIN = Field.create("MAINRELAYPIN", 28, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final String[] Gpio = {"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"}; + public static final Field SDCARDCSPIN = Field.create("SDCARDCSPIN", 30, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field CANTXPIN = Field.create("CANTXPIN", 32, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field CANRXPIN = Field.create("CANRXPIN", 34, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ETBEXPAVERAGELENGTH = Field.create("ETBEXPAVERAGELENGTH", 36, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field LAUNCHFUELADDERPERCENT = Field.create("LAUNCHFUELADDERPERCENT", 38, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ETBJAMTIMEOUT = Field.create("ETBJAMTIMEOUT", 39, FieldType.INT8).setScale(0.02).setBaseOffset(0); + public static final Field TACHOUTPUTPIN = Field.create("TACHOUTPUTPIN", 40, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final String[] pin_output_mode_e = {"default", "default inverted", "open collector", "open collector inverted"}; + public static final Field TACHOUTPUTPINMODE = Field.create("TACHOUTPUTPINMODE", 42, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ACIDLEEXTRAOFFSET = Field.create("ACIDLEEXTRAOFFSET", 43, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MANIDLEPOSITION = Field.create("MANIDLEPOSITION", 44, FieldType.FLOAT).setBaseOffset(0); public static final Field MULTISPARKMAXSPARKINGANGLE = Field.create("MULTISPARKMAXSPARKINGANGLE", 48, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final Field MULTISPARKMAXEXTRASPARKCOUNT = Field.create("MULTISPARKMAXEXTRASPARKCOUNT", 49, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_50 = Field.create("ALIGNMENTFILL_AT_50", 50, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VVTCONTROLMINRPM = Field.create("VVTCONTROLMINRPM", 50, FieldType.INT16).setScale(1.0).setBaseOffset(0); public static final Field INJECTOR_FLOW = Field.create("INJECTOR_FLOW", 52, FieldType.FLOAT).setBaseOffset(0); public static final Field INJECTOR_BATTLAGCORRBINS = Field.create("INJECTOR_BATTLAGCORRBINS", 56, FieldType.FLOAT).setBaseOffset(0); public static final Field INJECTOR_BATTLAGCORR = Field.create("INJECTOR_BATTLAGCORR", 88, FieldType.FLOAT).setBaseOffset(0); @@ -1539,8 +1557,7 @@ public class Fields { public static final Field TRIGGERSIMULATORRPM = Field.create("TRIGGERSIMULATORRPM", 434, FieldType.INT16).setScale(1.0).setBaseOffset(0); public static final Field CYLINDERSCOUNT = Field.create("CYLINDERSCOUNT", 436, FieldType.INT).setScale(1.0).setBaseOffset(0); public static final Field FIRINGORDER = Field.create("FIRINGORDER", 440, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_441 = Field.create("ALIGNMENTFILL_AT_441", 441, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final String[] Gpio = {"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"}; + public static final Field JUSTATEMPTEST = Field.create("JUSTATEMPTEST", 441, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final Field COMMUNITYCOMMSLEDPID = Field.create("COMMUNITYCOMMSLEDPID", 442, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); public static final Field CYLINDERBORE = Field.create("CYLINDERBORE", 444, FieldType.FLOAT).setBaseOffset(0); public static final String[] engine_load_mode_e = {"Speed Density", "MAF Air Charge", "Alpha-N", "Lua"}; @@ -1555,1568 +1572,1537 @@ public class Fields { public static final Field IGNITIONMODE = Field.create("IGNITIONMODE", 460, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final Field GAPTRACKINGLENGTHOVERRIDE = Field.create("GAPTRACKINGLENGTHOVERRIDE", 461, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final Field MAXIDLEVSS = Field.create("MAXIDLEVSS", 462, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_463 = Field.create("ALIGNMENTFILL_AT_463", 463, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CAMDECODER2JZPRECISION = Field.create("CAMDECODER2JZPRECISION", 463, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final Field MINOILPRESSUREAFTERSTART = Field.create("MINOILPRESSUREAFTERSTART", 464, FieldType.INT16).setScale(1.0).setBaseOffset(0); public static final Field TIMINGMODE = Field.create("TIMINGMODE", 466, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_467 = Field.create("ALIGNMENTFILL_AT_467", 467, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CANNBCTYPE = Field.create("CANNBCTYPE", 467, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final Field FIXEDMODETIMING = Field.create("FIXEDMODETIMING", 468, FieldType.FLOAT).setBaseOffset(0); public static final Field GLOBALTRIGGERANGLEOFFSET = Field.create("GLOBALTRIGGERANGLEOFFSET", 472, FieldType.FLOAT).setBaseOffset(0); public static final Field ANALOGINPUTDIVIDERCOEFFICIENT = Field.create("ANALOGINPUTDIVIDERCOEFFICIENT", 476, FieldType.FLOAT).setBaseOffset(0); public static final Field VBATTDIVIDERCOEFF = Field.create("VBATTDIVIDERCOEFF", 480, FieldType.FLOAT).setBaseOffset(0); public static final Field FANONTEMPERATURE = Field.create("FANONTEMPERATURE", 484, FieldType.FLOAT).setBaseOffset(0); public static final Field FANOFFTEMPERATURE = Field.create("FANOFFTEMPERATURE", 488, FieldType.FLOAT).setBaseOffset(0); - public static final String[] output_pin_e = {"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", "MC33972_1", "MC33972_2", "MC33972_3", "MC33972_4", "MC33972_5", "MC33972_6", "MC33972_7", "MC33972_8", "MC33972_9", "MC33972_10", "MC33972_11", "MC33972_12", "MC33972_13", "MC33972_14", "MC33972_15", "MC33972_16", "MC33972_17", "MC33972_18", "MC33972_19", "MC33972_20", "MC33972_21", "MC33972_22", "TLE8888_1", "TLE8888_2", "TLE8888_3", "TLE8888_4", "TLE8888_5", "TLE8888_6", "TLE8888_7", "TLE8888_8", "TLE8888_9", "TLE8888_10", "TLE8888_11", "TLE8888_12", "TLE8888_13", "TLE8888_14", "TLE8888_15", "TLE8888_16", "TLE8888_17", "TLE8888_18", "TLE8888_19", "TLE8888_20", "TLE8888_21", "TLE8888_22", "TLE8888_23", "TLE8888_24", "TLE8888_25", "TLE8888_26", "TLE8888_27", "TLE8888_28", "INVALID", "INVALID", "INVALID", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16", "L215", "L216", "L217", "L218", "L219", "L220", "L221", "L222", "L223", "L224", "L225", "L226", "L227", "L228", "L229", "L230", "L231", "L232", "L233", "L234", "L235", "L236", "L237", "L238", "L239", "L240", "L241", "L242", "L243", "L244", "L245", "L246", "L247", "L248", "can0", "can1", "can2", "can3", "can4", "can5", "can6", "can7", "protected_0", "protected_1", "protected_2", "protected_3", "protected_4", "protected_5", "protected_6", "protected_7", "protected_8", "protected_9", "protected_10", "protected_11", "protected_12", "protected_13", "protected_14", "protected_15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "MC33810_0_OUT_0", "MC33810_0_OUT_1", "MC33810_0_OUT_2", "MC33810_0_OUT_3", "MC33810_0_GD_0", "MC33810_0_GD_1", "MC33810_0_GD_2", "MC33810_0_GD_3"}; public static final Field ACRPIN = Field.create("ACRPIN", 492, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); public static final Field ALIGNMENTFILL_AT_494 = Field.create("ALIGNMENTFILL_AT_494", 494, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final Field DRIVEWHEELREVPERKM = Field.create("DRIVEWHEELREVPERKM", 496, FieldType.FLOAT).setBaseOffset(0); - public static final Field CANNBCTYPE = Field.create("CANNBCTYPE", 500, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_501 = Field.create("ALIGNMENTFILL_AT_501", 501, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CANSLEEPPERIODMS = Field.create("CANSLEEPPERIODMS", 504, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field CAMDECODER2JZPRECISION = Field.create("CAMDECODER2JZPRECISION", 508, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field JUSTATEMPTEST = Field.create("JUSTATEMPTEST", 509, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field UNUSEDHERE333 = Field.create("UNUSEDHERE333", 510, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field UNUSEDHERE334 = Field.create("UNUSEDHERE334", 511, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field BYFIRMWAREVERSION = Field.create("BYFIRMWAREVERSION", 512, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field TPS1_1ADCCHANNEL = Field.create("TPS1_1ADCCHANNEL", 516, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field VBATTADCCHANNEL = Field.create("VBATTADCCHANNEL", 517, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field FUELLEVELSENSOR = Field.create("FUELLEVELSENSOR", 518, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field TPS2_1ADCCHANNEL = Field.create("TPS2_1ADCCHANNEL", 519, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field IDLE_DERIVATIVEFILTERLOSS = Field.create("IDLE_DERIVATIVEFILTERLOSS", 520, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRAILINGSPARKANGLE = Field.create("TRAILINGSPARKANGLE", 524, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field CANSLEEPPERIODMS = Field.create("CANSLEEPPERIODMS", 500, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field BYFIRMWAREVERSION = Field.create("BYFIRMWAREVERSION", 504, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field TPS1_1ADCCHANNEL = Field.create("TPS1_1ADCCHANNEL", 508, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field VBATTADCCHANNEL = Field.create("VBATTADCCHANNEL", 509, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field FUELLEVELSENSOR = Field.create("FUELLEVELSENSOR", 510, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field TPS2_1ADCCHANNEL = Field.create("TPS2_1ADCCHANNEL", 511, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field IDLE_DERIVATIVEFILTERLOSS = Field.create("IDLE_DERIVATIVEFILTERLOSS", 512, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRAILINGSPARKANGLE = Field.create("TRAILINGSPARKANGLE", 516, FieldType.INT).setScale(1.0).setBaseOffset(0); public static final String[] trigger_type_e = {"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"}; - public static final Field TRIGGER_TYPE = Field.create("TRIGGER_TYPE", 528, FieldType.INT, trigger_type_e).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGER_CUSTOMTOTALTOOTHCOUNT = Field.create("TRIGGER_CUSTOMTOTALTOOTHCOUNT", 532, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGER_CUSTOMSKIPPEDTOOTHCOUNT = Field.create("TRIGGER_CUSTOMSKIPPEDTOOTHCOUNT", 536, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field AIRBYRPMTAPER = Field.create("AIRBYRPMTAPER", 540, FieldType.FLOAT).setBaseOffset(0); - public static final Field HIP9011SPIDEVICE = Field.create("HIP9011SPIDEVICE", 544, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCONTROLSAFEDUTYCYCLE = Field.create("BOOSTCONTROLSAFEDUTYCYCLE", 545, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MAFADCCHANNEL = Field.create("MAFADCCHANNEL", 546, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field ACRREVOLUTIONS = Field.create("ACRREVOLUTIONS", 547, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CALIBRATIONBIRTHDAY = Field.create("CALIBRATIONBIRTHDAY", 548, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field ADCVCC = Field.create("ADCVCC", 552, FieldType.FLOAT).setBaseOffset(0); - public static final Field MAPCAMDETECTIONANGLEPOSITION = Field.create("MAPCAMDETECTIONANGLEPOSITION", 556, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGER_TYPE = Field.create("TRIGGER_TYPE", 520, FieldType.INT, trigger_type_e).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGER_CUSTOMTOTALTOOTHCOUNT = Field.create("TRIGGER_CUSTOMTOTALTOOTHCOUNT", 524, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGER_CUSTOMSKIPPEDTOOTHCOUNT = Field.create("TRIGGER_CUSTOMSKIPPEDTOOTHCOUNT", 528, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field AIRBYRPMTAPER = Field.create("AIRBYRPMTAPER", 532, FieldType.FLOAT).setBaseOffset(0); + public static final Field HIP9011SPIDEVICE = Field.create("HIP9011SPIDEVICE", 536, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCONTROLSAFEDUTYCYCLE = Field.create("BOOSTCONTROLSAFEDUTYCYCLE", 537, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MAFADCCHANNEL = Field.create("MAFADCCHANNEL", 538, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field ACRREVOLUTIONS = Field.create("ACRREVOLUTIONS", 539, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CALIBRATIONBIRTHDAY = Field.create("CALIBRATIONBIRTHDAY", 540, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field ADCVCC = Field.create("ADCVCC", 544, FieldType.FLOAT).setBaseOffset(0); + public static final Field MAPCAMDETECTIONANGLEPOSITION = Field.create("MAPCAMDETECTIONANGLEPOSITION", 548, FieldType.FLOAT).setBaseOffset(0); public static final String[] brain_input_pin_e = {"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"}; - public static final Field CAMINPUTS1 = Field.create("CAMINPUTS1", 560, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field CAMINPUTS2 = Field.create("CAMINPUTS2", 562, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field CAMINPUTS3 = Field.create("CAMINPUTS3", 564, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field CAMINPUTS4 = Field.create("CAMINPUTS4", 566, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field AFR_HWCHANNEL = Field.create("AFR_HWCHANNEL", 568, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AFR_HWCHANNEL2 = Field.create("AFR_HWCHANNEL2", 569, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AFR_ALIGNMENTFILL_AT_2 = Field.create("AFR_ALIGNMENTFILL_AT_2", 570, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field AFR_V1 = Field.create("AFR_V1", 572, FieldType.FLOAT).setBaseOffset(0); - public static final Field AFR_VALUE1 = Field.create("AFR_VALUE1", 576, FieldType.FLOAT).setBaseOffset(0); - public static final Field AFR_V2 = Field.create("AFR_V2", 580, FieldType.FLOAT).setBaseOffset(0); - public static final Field AFR_VALUE2 = Field.create("AFR_VALUE2", 584, FieldType.FLOAT).setBaseOffset(0); - public static final Field THROTTLEPEDALPOSITIONADCCHANNEL = Field.create("THROTTLEPEDALPOSITIONADCCHANNEL", 588, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field ETBSPLIT = Field.create("ETBSPLIT", 589, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field TLE6240_CS = Field.create("TLE6240_CS", 590, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final String[] pin_output_mode_e = {"default", "default inverted", "open collector", "open collector inverted"}; - public static final Field TLE6240_CSPINMODE = Field.create("TLE6240_CSPINMODE", 592, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field MC33810_CSPINMODE = Field.create("MC33810_CSPINMODE", 593, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field CAMINPUTS1 = Field.create("CAMINPUTS1", 552, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field CAMINPUTS2 = Field.create("CAMINPUTS2", 554, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field CAMINPUTS3 = Field.create("CAMINPUTS3", 556, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field CAMINPUTS4 = Field.create("CAMINPUTS4", 558, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field AFR_HWCHANNEL = Field.create("AFR_HWCHANNEL", 560, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AFR_HWCHANNEL2 = Field.create("AFR_HWCHANNEL2", 561, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AFR_ALIGNMENTFILL_AT_2 = Field.create("AFR_ALIGNMENTFILL_AT_2", 562, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field AFR_V1 = Field.create("AFR_V1", 564, FieldType.FLOAT).setBaseOffset(0); + public static final Field AFR_VALUE1 = Field.create("AFR_VALUE1", 568, FieldType.FLOAT).setBaseOffset(0); + public static final Field AFR_V2 = Field.create("AFR_V2", 572, FieldType.FLOAT).setBaseOffset(0); + public static final Field AFR_VALUE2 = Field.create("AFR_VALUE2", 576, FieldType.FLOAT).setBaseOffset(0); + public static final Field THROTTLEPEDALPOSITIONADCCHANNEL = Field.create("THROTTLEPEDALPOSITIONADCCHANNEL", 580, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field ETBSPLIT = Field.create("ETBSPLIT", 581, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field TLE6240_CS = Field.create("TLE6240_CS", 582, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field TLE6240_CSPINMODE = Field.create("TLE6240_CSPINMODE", 584, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field MC33810_CSPINMODE = Field.create("MC33810_CSPINMODE", 585, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); public static final String[] switch_input_pin_e = {"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"}; - public static final Field THROTTLEPEDALUPPIN = Field.create("THROTTLEPEDALUPPIN", 594, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field BAROSENSOR_LOWVALUE = Field.create("BAROSENSOR_LOWVALUE", 596, FieldType.FLOAT).setBaseOffset(0); - public static final Field BAROSENSOR_HIGHVALUE = Field.create("BAROSENSOR_HIGHVALUE", 600, FieldType.FLOAT).setBaseOffset(0); - public static final Field BAROSENSOR_TYPE = Field.create("BAROSENSOR_TYPE", 604, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field BAROSENSOR_HWCHANNEL = Field.create("BAROSENSOR_HWCHANNEL", 605, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field BAROSENSOR_ALIGNMENTFILL_AT_10 = Field.create("BAROSENSOR_ALIGNMENTFILL_AT_10", 606, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IDLE_SOLENOIDFREQUENCY = Field.create("IDLE_SOLENOIDFREQUENCY", 608, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field IDLE_SOLENOIDPIN = Field.create("IDLE_SOLENOIDPIN", 612, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IDLE_STEPPERDIRECTIONPIN = Field.create("IDLE_STEPPERDIRECTIONPIN", 614, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field IDLE_STEPPERSTEPPIN = Field.create("IDLE_STEPPERSTEPPIN", 616, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field IDLE_SOLENOIDPINMODE = Field.create("IDLE_SOLENOIDPINMODE", 618, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field IDLE_ALIGNMENTFILL_AT_11 = Field.create("IDLE_ALIGNMENTFILL_AT_11", 619, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MANIDLEPOSITION = Field.create("MANIDLEPOSITION", 620, FieldType.FLOAT).setBaseOffset(0); - public static final Field KNOCKRETARDAGGRESSION = Field.create("KNOCKRETARDAGGRESSION", 624, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field KNOCKRETARDREAPPLYRATE = Field.create("KNOCKRETARDREAPPLYRATE", 625, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field ENGINESYNCCAM = Field.create("ENGINESYNCCAM", 626, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VSSFILTERRECIPROCAL = Field.create("VSSFILTERRECIPROCAL", 627, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VSSGEARRATIO = Field.create("VSSGEARRATIO", 628, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field VSSTOOTHCOUNT = Field.create("VSSTOOTHCOUNT", 630, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field THROTTLEPEDALUPPIN = Field.create("THROTTLEPEDALUPPIN", 586, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field BAROSENSOR_LOWVALUE = Field.create("BAROSENSOR_LOWVALUE", 588, FieldType.FLOAT).setBaseOffset(0); + public static final Field BAROSENSOR_HIGHVALUE = Field.create("BAROSENSOR_HIGHVALUE", 592, FieldType.FLOAT).setBaseOffset(0); + public static final Field BAROSENSOR_TYPE = Field.create("BAROSENSOR_TYPE", 596, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field BAROSENSOR_HWCHANNEL = Field.create("BAROSENSOR_HWCHANNEL", 597, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field BAROSENSOR_ALIGNMENTFILL_AT_10 = Field.create("BAROSENSOR_ALIGNMENTFILL_AT_10", 598, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IDLE_SOLENOIDFREQUENCY = Field.create("IDLE_SOLENOIDFREQUENCY", 600, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field IDLE_SOLENOIDPIN = Field.create("IDLE_SOLENOIDPIN", 604, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IDLE_STEPPERDIRECTIONPIN = Field.create("IDLE_STEPPERDIRECTIONPIN", 606, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field IDLE_STEPPERSTEPPIN = Field.create("IDLE_STEPPERSTEPPIN", 608, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field IDLE_SOLENOIDPINMODE = Field.create("IDLE_SOLENOIDPINMODE", 610, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field IDLE_ALIGNMENTFILL_AT_11 = Field.create("IDLE_ALIGNMENTFILL_AT_11", 611, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field KNOCKRETARDAGGRESSION = Field.create("KNOCKRETARDAGGRESSION", 612, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field KNOCKRETARDREAPPLYRATE = Field.create("KNOCKRETARDREAPPLYRATE", 613, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field ENGINESYNCCAM = Field.create("ENGINESYNCCAM", 614, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SDCARDCSPINMODE = Field.create("SDCARDCSPINMODE", 615, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field VSSGEARRATIO = Field.create("VSSGEARRATIO", 616, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field VSSFILTERRECIPROCAL = Field.create("VSSFILTERRECIPROCAL", 618, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VSSTOOTHCOUNT = Field.create("VSSTOOTHCOUNT", 619, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final String[] ve_override_e = {"None", "MAP", "TPS"}; - public static final Field IDLEVEOVERRIDEMODE = Field.create("IDLEVEOVERRIDEMODE", 631, FieldType.INT8, ve_override_e).setScale(1.0).setBaseOffset(0); - public static final Field L9779_CS = Field.create("L9779_CS", 632, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS1 = Field.create("INJECTIONPINS1", 634, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS2 = Field.create("INJECTIONPINS2", 636, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS3 = Field.create("INJECTIONPINS3", 638, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS4 = Field.create("INJECTIONPINS4", 640, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS5 = Field.create("INJECTIONPINS5", 642, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS6 = Field.create("INJECTIONPINS6", 644, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS7 = Field.create("INJECTIONPINS7", 646, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS8 = Field.create("INJECTIONPINS8", 648, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS9 = Field.create("INJECTIONPINS9", 650, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS10 = Field.create("INJECTIONPINS10", 652, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS11 = Field.create("INJECTIONPINS11", 654, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINS12 = Field.create("INJECTIONPINS12", 656, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS1 = Field.create("IGNITIONPINS1", 658, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS2 = Field.create("IGNITIONPINS2", 660, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS3 = Field.create("IGNITIONPINS3", 662, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS4 = Field.create("IGNITIONPINS4", 664, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS5 = Field.create("IGNITIONPINS5", 666, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS6 = Field.create("IGNITIONPINS6", 668, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS7 = Field.create("IGNITIONPINS7", 670, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS8 = Field.create("IGNITIONPINS8", 672, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS9 = Field.create("IGNITIONPINS9", 674, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS10 = Field.create("IGNITIONPINS10", 676, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS11 = Field.create("IGNITIONPINS11", 678, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINS12 = Field.create("IGNITIONPINS12", 680, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINMODE = Field.create("INJECTIONPINMODE", 682, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONPINMODE = Field.create("IGNITIONPINMODE", 683, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field FUELPUMPPIN = Field.create("FUELPUMPPIN", 684, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field FUELPUMPPINMODE = Field.create("FUELPUMPPINMODE", 686, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field GAPVVTTRACKINGLENGTHOVERRIDE = Field.create("GAPVVTTRACKINGLENGTHOVERRIDE", 687, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MALFUNCTIONINDICATORPIN = Field.create("MALFUNCTIONINDICATORPIN", 688, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field MALFUNCTIONINDICATORPINMODE = Field.create("MALFUNCTIONINDICATORPINMODE", 690, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field FANPINMODE = Field.create("FANPINMODE", 691, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field FANPIN = Field.create("FANPIN", 692, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field CLUTCHDOWNPIN = Field.create("CLUTCHDOWNPIN", 694, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field ALTERNATORCONTROLPIN = Field.create("ALTERNATORCONTROLPIN", 696, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field ALTERNATORCONTROLPINMODE = Field.create("ALTERNATORCONTROLPINMODE", 698, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field IDLEVEOVERRIDEMODE = Field.create("IDLEVEOVERRIDEMODE", 620, FieldType.INT8, ve_override_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_621 = Field.create("ALIGNMENTFILL_AT_621", 621, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field L9779_CS = Field.create("L9779_CS", 622, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS1 = Field.create("INJECTIONPINS1", 624, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS2 = Field.create("INJECTIONPINS2", 626, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS3 = Field.create("INJECTIONPINS3", 628, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS4 = Field.create("INJECTIONPINS4", 630, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS5 = Field.create("INJECTIONPINS5", 632, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS6 = Field.create("INJECTIONPINS6", 634, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS7 = Field.create("INJECTIONPINS7", 636, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS8 = Field.create("INJECTIONPINS8", 638, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS9 = Field.create("INJECTIONPINS9", 640, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS10 = Field.create("INJECTIONPINS10", 642, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS11 = Field.create("INJECTIONPINS11", 644, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINS12 = Field.create("INJECTIONPINS12", 646, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS1 = Field.create("IGNITIONPINS1", 648, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS2 = Field.create("IGNITIONPINS2", 650, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS3 = Field.create("IGNITIONPINS3", 652, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS4 = Field.create("IGNITIONPINS4", 654, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS5 = Field.create("IGNITIONPINS5", 656, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS6 = Field.create("IGNITIONPINS6", 658, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS7 = Field.create("IGNITIONPINS7", 660, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS8 = Field.create("IGNITIONPINS8", 662, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS9 = Field.create("IGNITIONPINS9", 664, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS10 = Field.create("IGNITIONPINS10", 666, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS11 = Field.create("IGNITIONPINS11", 668, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINS12 = Field.create("IGNITIONPINS12", 670, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINMODE = Field.create("INJECTIONPINMODE", 672, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONPINMODE = Field.create("IGNITIONPINMODE", 673, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field FUELPUMPPIN = Field.create("FUELPUMPPIN", 674, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field FUELPUMPPINMODE = Field.create("FUELPUMPPINMODE", 676, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field GAPVVTTRACKINGLENGTHOVERRIDE = Field.create("GAPVVTTRACKINGLENGTHOVERRIDE", 677, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MALFUNCTIONINDICATORPIN = Field.create("MALFUNCTIONINDICATORPIN", 678, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field MALFUNCTIONINDICATORPINMODE = Field.create("MALFUNCTIONINDICATORPINMODE", 680, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field FANPINMODE = Field.create("FANPINMODE", 681, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field FANPIN = Field.create("FANPIN", 682, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field CLUTCHDOWNPIN = Field.create("CLUTCHDOWNPIN", 684, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field ALTERNATORCONTROLPIN = Field.create("ALTERNATORCONTROLPIN", 686, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field ALTERNATORCONTROLPINMODE = Field.create("ALTERNATORCONTROLPINMODE", 688, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); public static final String[] pin_input_mode_e = {"DEFAULT", "PULLUP", "PULLDOWN"}; - public static final Field CLUTCHDOWNPINMODE = Field.create("CLUTCHDOWNPINMODE", 699, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field DIGITALPOTENTIOMETERCHIPSELECT1 = Field.create("DIGITALPOTENTIOMETERCHIPSELECT1", 700, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field DIGITALPOTENTIOMETERCHIPSELECT2 = Field.create("DIGITALPOTENTIOMETERCHIPSELECT2", 702, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field DIGITALPOTENTIOMETERCHIPSELECT3 = Field.create("DIGITALPOTENTIOMETERCHIPSELECT3", 704, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field DIGITALPOTENTIOMETERCHIPSELECT4 = Field.create("DIGITALPOTENTIOMETERCHIPSELECT4", 706, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ELECTRONICTHROTTLEPIN1MODE = Field.create("ELECTRONICTHROTTLEPIN1MODE", 708, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field MAX31855SPIDEVICE = Field.create("MAX31855SPIDEVICE", 709, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field DEBUGTRIGGERSYNC = Field.create("DEBUGTRIGGERSYNC", 710, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field DIGITALPOTENTIOMETERSPIDEVICE = Field.create("DIGITALPOTENTIOMETERSPIDEVICE", 712, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_713 = Field.create("ALIGNMENTFILL_AT_713", 713, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MC33972_CS = Field.create("MC33972_CS", 714, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field MC33972_CSPINMODE = Field.create("MC33972_CSPINMODE", 716, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXFASTSENSOR1_ADCCHANNEL = Field.create("AUXFASTSENSOR1_ADCCHANNEL", 717, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field TPS1_2ADCCHANNEL = Field.create("TPS1_2ADCCHANNEL", 718, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field TPS2_2ADCCHANNEL = Field.create("TPS2_2ADCCHANNEL", 719, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field THROTTLEPEDALPOSITIONSECONDADCCHANNEL = Field.create("THROTTLEPEDALPOSITIONSECONDADCCHANNEL", 720, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field FUELLEVELVALUES = Field.create("FUELLEVELVALUES", 721, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CLUTCHDOWNPINMODE = Field.create("CLUTCHDOWNPINMODE", 689, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field DIGITALPOTENTIOMETERCHIPSELECT1 = Field.create("DIGITALPOTENTIOMETERCHIPSELECT1", 690, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field DIGITALPOTENTIOMETERCHIPSELECT2 = Field.create("DIGITALPOTENTIOMETERCHIPSELECT2", 692, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field DIGITALPOTENTIOMETERCHIPSELECT3 = Field.create("DIGITALPOTENTIOMETERCHIPSELECT3", 694, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field DIGITALPOTENTIOMETERCHIPSELECT4 = Field.create("DIGITALPOTENTIOMETERCHIPSELECT4", 696, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ELECTRONICTHROTTLEPIN1MODE = Field.create("ELECTRONICTHROTTLEPIN1MODE", 698, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field MAX31855SPIDEVICE = Field.create("MAX31855SPIDEVICE", 699, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field DEBUGTRIGGERSYNC = Field.create("DEBUGTRIGGERSYNC", 700, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field DIGITALPOTENTIOMETERSPIDEVICE = Field.create("DIGITALPOTENTIOMETERSPIDEVICE", 702, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field BRAKEPEDALPINMODE = Field.create("BRAKEPEDALPINMODE", 703, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field MC33972_CS = Field.create("MC33972_CS", 704, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field MC33972_CSPINMODE = Field.create("MC33972_CSPINMODE", 706, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXFASTSENSOR1_ADCCHANNEL = Field.create("AUXFASTSENSOR1_ADCCHANNEL", 707, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field TPS1_2ADCCHANNEL = Field.create("TPS1_2ADCCHANNEL", 708, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field TPS2_2ADCCHANNEL = Field.create("TPS2_2ADCCHANNEL", 709, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field THROTTLEPEDALPOSITIONSECONDADCCHANNEL = Field.create("THROTTLEPEDALPOSITIONSECONDADCCHANNEL", 710, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); public static final String[] ego_sensor_e = {"BPSX", "Innovate", "14Point7", "INVALID", "PLX", "Custom", "AEM"}; - public static final Field AFR_TYPE = Field.create("AFR_TYPE", 729, FieldType.INT8, ego_sensor_e).setScale(1.0).setBaseOffset(0); - public static final Field MC33810_CS1 = Field.create("MC33810_CS1", 730, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field IDLE_ANTIWINDUPFREQ = Field.create("IDLE_ANTIWINDUPFREQ", 732, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERINPUTPINS1 = Field.create("TRIGGERINPUTPINS1", 736, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGERINPUTPINS2 = Field.create("TRIGGERINPUTPINS2", 738, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field MC33_T_MIN_BOOST = Field.create("MC33_T_MIN_BOOST", 740, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field HIP9011CSPINMODE = Field.create("HIP9011CSPINMODE", 742, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_743 = Field.create("ALIGNMENTFILL_AT_743", 743, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TACHOUTPUTPIN = Field.create("TACHOUTPUTPIN", 744, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TACHOUTPUTPINMODE = Field.create("TACHOUTPUTPINMODE", 746, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_747 = Field.create("ALIGNMENTFILL_AT_747", 747, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MAINRELAYPIN = Field.create("MAINRELAYPIN", 748, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field SDCARDCSPIN = Field.create("SDCARDCSPIN", 750, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field CANTXPIN = Field.create("CANTXPIN", 752, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field CANRXPIN = Field.create("CANRXPIN", 754, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field THROTTLEPEDALUPPINMODE = Field.create("THROTTLEPEDALUPPINMODE", 756, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ACIDLEEXTRAOFFSET = Field.create("ACIDLEEXTRAOFFSET", 757, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FINALGEARRATIO = Field.create("FINALGEARRATIO", 758, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field TCUINPUTSPEEDSENSORPIN = Field.create("TCUINPUTSPEEDSENSORPIN", 760, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCUINPUTSPEEDSENSORTEETH = Field.create("TCUINPUTSPEEDSENSORTEETH", 762, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_763 = Field.create("ALIGNMENTFILL_AT_763", 763, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field WASTEGATEPOSITIONMIN = Field.create("WASTEGATEPOSITIONMIN", 764, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field WASTEGATEPOSITIONMAX = Field.create("WASTEGATEPOSITIONMAX", 766, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLEPOSITIONMIN = Field.create("IDLEPOSITIONMIN", 768, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLEPOSITIONMAX = Field.create("IDLEPOSITIONMAX", 770, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TUNERSTUDIOSERIALSPEED = Field.create("TUNERSTUDIOSERIALSPEED", 772, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field COMPRESSIONRATIO = Field.create("COMPRESSIONRATIO", 776, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERSIMULATORPINS1 = Field.create("TRIGGERSIMULATORPINS1", 780, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGERSIMULATORPINS2 = Field.create("TRIGGERSIMULATORPINS2", 782, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field FORDINJECTORSMALLPULSESLOPE = Field.create("FORDINJECTORSMALLPULSESLOPE", 784, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field TRIGGERSIMULATORPINMODES1 = Field.create("TRIGGERSIMULATORPINMODES1", 786, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGERSIMULATORPINMODES2 = Field.create("TRIGGERSIMULATORPINMODES2", 787, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field MAF2ADCCHANNEL = Field.create("MAF2ADCCHANNEL", 788, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_789 = Field.create("ALIGNMENTFILL_AT_789", 789, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field O2HEATERPIN = Field.create("O2HEATERPIN", 790, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field O2HEATERPINMODETODO = Field.create("O2HEATERPINMODETODO", 792, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field LAMBDAPROTECTIONMINRPM = Field.create("LAMBDAPROTECTIONMINRPM", 793, FieldType.INT8).setScale(100.0).setBaseOffset(0); - public static final Field LAMBDAPROTECTIONMINLOAD = Field.create("LAMBDAPROTECTIONMINLOAD", 794, FieldType.INT8).setScale(10.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_795 = Field.create("ALIGNMENTFILL_AT_795", 795, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IS_ENABLED_SPI_1 = Field.create("IS_ENABLED_SPI_1", 796, FieldType.BIT, 0).setBaseOffset(0); - public static final Field IS_ENABLED_SPI_2 = Field.create("IS_ENABLED_SPI_2", 796, FieldType.BIT, 1).setBaseOffset(0); - public static final Field IS_ENABLED_SPI_3 = Field.create("IS_ENABLED_SPI_3", 796, FieldType.BIT, 2).setBaseOffset(0); - public static final Field ISSDCARDENABLED = Field.create("ISSDCARDENABLED", 796, FieldType.BIT, 3).setBaseOffset(0); - public static final Field RUSEFIVERBOSE29B = Field.create("RUSEFIVERBOSE29B", 796, FieldType.BIT, 4).setBaseOffset(0); - public static final Field RETHROWHARDFAULT = Field.create("RETHROWHARDFAULT", 796, FieldType.BIT, 5).setBaseOffset(0); - public static final Field ISHIP9011ENABLED = Field.create("ISHIP9011ENABLED", 796, FieldType.BIT, 6).setBaseOffset(0); - public static final Field REQUIREFOOTONBRAKETOCRANK = Field.create("REQUIREFOOTONBRAKETOCRANK", 796, FieldType.BIT, 7).setBaseOffset(0); - public static final Field VERBOSEQUAD = Field.create("VERBOSEQUAD", 796, FieldType.BIT, 8).setBaseOffset(0); - public static final Field USESTEPPERIDLE = Field.create("USESTEPPERIDLE", 796, FieldType.BIT, 9).setBaseOffset(0); - public static final Field ENABLEDSTEP1LIMITER = Field.create("ENABLEDSTEP1LIMITER", 796, FieldType.BIT, 10).setBaseOffset(0); - public static final Field USETPICADVANCEDMODE = Field.create("USETPICADVANCEDMODE", 796, FieldType.BIT, 11).setBaseOffset(0); - public static final Field LAMBDAPROTECTIONENABLE = Field.create("LAMBDAPROTECTIONENABLE", 796, FieldType.BIT, 12).setBaseOffset(0); - public static final Field VERBOSETLE8888 = Field.create("VERBOSETLE8888", 796, FieldType.BIT, 13).setBaseOffset(0); - public static final Field ENABLEVERBOSECANTX = Field.create("ENABLEVERBOSECANTX", 796, FieldType.BIT, 14).setBaseOffset(0); - public static final Field ETB1CONFIGURED = Field.create("ETB1CONFIGURED", 796, FieldType.BIT, 15).setBaseOffset(0); - public static final Field ETB2CONFIGURED = Field.create("ETB2CONFIGURED", 796, FieldType.BIT, 16).setBaseOffset(0); - public static final Field MEASUREMAPONLYINONECYLINDER = Field.create("MEASUREMAPONLYINONECYLINDER", 796, FieldType.BIT, 17).setBaseOffset(0); - public static final Field STEPPERFORCEPARKINGEVERYRESTART = Field.create("STEPPERFORCEPARKINGEVERYRESTART", 796, FieldType.BIT, 18).setBaseOffset(0); - public static final Field ISFASTERENGINESPINUPENABLED = Field.create("ISFASTERENGINESPINUPENABLED", 796, FieldType.BIT, 19).setBaseOffset(0); - public static final Field COASTINGFUELCUTENABLED = Field.create("COASTINGFUELCUTENABLED", 796, FieldType.BIT, 20).setBaseOffset(0); - public static final Field USEIACTABLEFORCOASTING = Field.create("USEIACTABLEFORCOASTING", 796, FieldType.BIT, 21).setBaseOffset(0); - public static final Field USENOISELESSTRIGGERDECODER = Field.create("USENOISELESSTRIGGERDECODER", 796, FieldType.BIT, 22).setBaseOffset(0); - public static final Field USEIDLETIMINGPIDCONTROL = Field.create("USEIDLETIMINGPIDCONTROL", 796, FieldType.BIT, 23).setBaseOffset(0); - public static final Field DISABLEETBWHENENGINESTOPPED = Field.create("DISABLEETBWHENENGINESTOPPED", 796, FieldType.BIT, 24).setBaseOffset(0); - public static final Field IS_ENABLED_SPI_4 = Field.create("IS_ENABLED_SPI_4", 796, FieldType.BIT, 25).setBaseOffset(0); - public static final Field PAUSEETBCONTROL = Field.create("PAUSEETBCONTROL", 796, FieldType.BIT, 26).setBaseOffset(0); - public static final Field ALIGNENGINESNIFFERATTDC = Field.create("ALIGNENGINESNIFFERATTDC", 796, FieldType.BIT, 27).setBaseOffset(0); - public static final Field VERBOSEKLINE = Field.create("VERBOSEKLINE", 796, FieldType.BIT, 28).setBaseOffset(0); - public static final Field IDLEINCREMENTALPIDCIC = Field.create("IDLEINCREMENTALPIDCIC", 796, FieldType.BIT, 29).setBaseOffset(0); - public static final Field ENABLEAEMXSERIES = Field.create("ENABLEAEMXSERIES", 796, FieldType.BIT, 30).setBaseOffset(0); - public static final Field LOGICANALYZERPINS1 = Field.create("LOGICANALYZERPINS1", 800, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LOGICANALYZERPINS2 = Field.create("LOGICANALYZERPINS2", 802, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LOGICANALYZERPINS3 = Field.create("LOGICANALYZERPINS3", 804, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LOGICANALYZERPINS4 = Field.create("LOGICANALYZERPINS4", 806, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field MAINRELAYPINMODE = Field.create("MAINRELAYPINMODE", 808, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_809 = Field.create("ALIGNMENTFILL_AT_809", 809, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HIP9011CSPIN = Field.create("HIP9011CSPIN", 810, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field HIP9011INTHOLDPIN = Field.create("HIP9011INTHOLDPIN", 812, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field HIP9011INTHOLDPINMODE = Field.create("HIP9011INTHOLDPINMODE", 814, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_815 = Field.create("ALIGNMENTFILL_AT_815", 815, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VERBOSECANBASEADDRESS = Field.create("VERBOSECANBASEADDRESS", 816, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field MC33_HVOLT = Field.create("MC33_HVOLT", 820, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MINIMUMBOOSTCLOSEDLOOPMAP = Field.create("MINIMUMBOOSTCLOSEDLOOPMAP", 821, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ACFANPIN = Field.create("ACFANPIN", 822, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field ACFANPINMODE = Field.create("ACFANPINMODE", 824, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field L9779SPIDEVICE = Field.create("L9779SPIDEVICE", 825, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field DWELLVOLTAGECORRVOLTBINS = Field.create("DWELLVOLTAGECORRVOLTBINS", 826, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field IMUTYPE = Field.create("IMUTYPE", 834, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field DWELLVOLTAGECORRVALUES = Field.create("DWELLVOLTAGECORRVALUES", 835, FieldType.INT8).setScale(0.02).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_843 = Field.create("ALIGNMENTFILL_AT_843", 843, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VEHICLEWEIGHT = Field.create("VEHICLEWEIGHT", 844, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLEPIDRPMUPPERLIMIT = Field.create("IDLEPIDRPMUPPERLIMIT", 846, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field APPLYNONLINEARBELOWPULSE = Field.create("APPLYNONLINEARBELOWPULSE", 848, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field LPS25BAROSENSORSCL = Field.create("LPS25BAROSENSORSCL", 850, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field LPS25BAROSENSORSDA = Field.create("LPS25BAROSENSORSDA", 852, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field VEHICLESPEEDSENSORINPUTPIN = Field.create("VEHICLESPEEDSENSORINPUTPIN", 854, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field CLUTCHUPPIN = Field.create("CLUTCHUPPIN", 856, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTORNONLINEARMODE = Field.create("INJECTORNONLINEARMODE", 858, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CLUTCHUPPINMODE = Field.create("CLUTCHUPPINMODE", 859, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field MAX31855_CS1 = Field.create("MAX31855_CS1", 860, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field MAX31855_CS2 = Field.create("MAX31855_CS2", 862, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field MAX31855_CS3 = Field.create("MAX31855_CS3", 864, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field MAX31855_CS4 = Field.create("MAX31855_CS4", 866, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field MAX31855_CS5 = Field.create("MAX31855_CS5", 868, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field MAX31855_CS6 = Field.create("MAX31855_CS6", 870, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field MAX31855_CS7 = Field.create("MAX31855_CS7", 872, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field MAX31855_CS8 = Field.create("MAX31855_CS8", 874, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field FLEXSENSORPIN = Field.create("FLEXSENSORPIN", 876, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TEST557PIN = Field.create("TEST557PIN", 878, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERDIRECTIONPINMODE = Field.create("STEPPERDIRECTIONPINMODE", 880, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field MC33972SPIDEVICE = Field.create("MC33972SPIDEVICE", 881, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STOICHRATIOSECONDARY = Field.create("STOICHRATIOSECONDARY", 882, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field ETBMAXIMUMPOSITION = Field.create("ETBMAXIMUMPOSITION", 883, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field SDCARDLOGFREQUENCY = Field.create("SDCARDLOGFREQUENCY", 884, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLEPOSITIONCHANNEL = Field.create("IDLEPOSITIONCHANNEL", 886, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_887 = Field.create("ALIGNMENTFILL_AT_887", 887, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field DEBUGMAPAVERAGING = Field.create("DEBUGMAPAVERAGING", 888, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field STARTERRELAYDISABLEPIN = Field.create("STARTERRELAYDISABLEPIN", 890, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field STARTERRELAYDISABLEPINMODE = Field.create("STARTERRELAYDISABLEPINMODE", 892, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_893 = Field.create("ALIGNMENTFILL_AT_893", 893, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field SECONDSOLENOIDPIN = Field.create("SECONDSOLENOIDPIN", 894, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field STARTSTOPBUTTONPIN = Field.create("STARTSTOPBUTTONPIN", 896, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_898 = Field.create("ALIGNMENTFILL_AT_898", 898, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MAPMINBUFFERLENGTH = Field.create("MAPMINBUFFERLENGTH", 900, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field IDLEPIDDEACTIVATIONTPSTHRESHOLD = Field.create("IDLEPIDDEACTIVATIONTPSTHRESHOLD", 904, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERPARKINGEXTRASTEPS = Field.create("STEPPERPARKINGEXTRASTEPS", 906, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TPS1SECONDARYMIN = Field.create("TPS1SECONDARYMIN", 908, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TPS1SECONDARYMAX = Field.create("TPS1SECONDARYMAX", 910, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ANTILAGRPMTRESHOLD = Field.create("ANTILAGRPMTRESHOLD", 912, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field STARTCRANKINGDURATION = Field.create("STARTCRANKINGDURATION", 914, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGERERRORPIN = Field.create("TRIGGERERRORPIN", 916, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGERERRORPINMODE = Field.create("TRIGGERERRORPINMODE", 918, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_919 = Field.create("ALIGNMENTFILL_AT_919", 919, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ACRELAYPIN = Field.create("ACRELAYPIN", 920, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LAMBDAPROTECTIONMINTPS = Field.create("LAMBDAPROTECTIONMINTPS", 922, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field LAMBDAPROTECTIONTIMEOUT = Field.create("LAMBDAPROTECTIONTIMEOUT", 923, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field LAMBDAPROTECTIONRESTORERPM = Field.create("LAMBDAPROTECTIONRESTORERPM", 924, FieldType.INT8).setScale(100.0).setBaseOffset(0); - public static final Field ACRELAYPINMODE = Field.create("ACRELAYPINMODE", 925, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_926 = Field.create("ALIGNMENTFILL_AT_926", 926, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTING1 = Field.create("SCRIPTSETTING1", 928, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTING2 = Field.create("SCRIPTSETTING2", 932, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTING3 = Field.create("SCRIPTSETTING3", 936, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTING4 = Field.create("SCRIPTSETTING4", 940, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTING5 = Field.create("SCRIPTSETTING5", 944, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTING6 = Field.create("SCRIPTSETTING6", 948, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTING7 = Field.create("SCRIPTSETTING7", 952, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTING8 = Field.create("SCRIPTSETTING8", 956, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field SPI1MOSIPIN = Field.create("SPI1MOSIPIN", 960, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI1MISOPIN = Field.create("SPI1MISOPIN", 962, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI1SCKPIN = Field.create("SPI1SCKPIN", 964, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI2MOSIPIN = Field.create("SPI2MOSIPIN", 966, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI2MISOPIN = Field.create("SPI2MISOPIN", 968, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI2SCKPIN = Field.create("SPI2SCKPIN", 970, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI3MOSIPIN = Field.create("SPI3MOSIPIN", 972, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI3MISOPIN = Field.create("SPI3MISOPIN", 974, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI3SCKPIN = Field.create("SPI3SCKPIN", 976, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field CDMINPUTPIN = Field.create("CDMINPUTPIN", 978, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field CONSOLEUARTDEVICE = Field.create("CONSOLEUARTDEVICE", 980, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field AFR_TYPE = Field.create("AFR_TYPE", 711, FieldType.INT8, ego_sensor_e).setScale(1.0).setBaseOffset(0); + public static final Field MC33810_CS1 = Field.create("MC33810_CS1", 712, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_714 = Field.create("ALIGNMENTFILL_AT_714", 714, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IDLE_ANTIWINDUPFREQ = Field.create("IDLE_ANTIWINDUPFREQ", 716, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERINPUTPINS1 = Field.create("TRIGGERINPUTPINS1", 720, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGERINPUTPINS2 = Field.create("TRIGGERINPUTPINS2", 722, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field MC33_T_MIN_BOOST = Field.create("MC33_T_MIN_BOOST", 724, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field HIP9011CSPINMODE = Field.create("HIP9011CSPINMODE", 726, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field THROTTLEPEDALUPPINMODE = Field.create("THROTTLEPEDALUPPINMODE", 727, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field FINALGEARRATIO = Field.create("FINALGEARRATIO", 728, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field TUNERSTUDIOSERIALSPEED = Field.create("TUNERSTUDIOSERIALSPEED", 730, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TCUINPUTSPEEDSENSORPIN = Field.create("TCUINPUTSPEEDSENSORPIN", 732, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCUINPUTSPEEDSENSORTEETH = Field.create("TCUINPUTSPEEDSENSORTEETH", 734, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_735 = Field.create("ALIGNMENTFILL_AT_735", 735, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGERSIMULATORPINS1 = Field.create("TRIGGERSIMULATORPINS1", 736, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGERSIMULATORPINS2 = Field.create("TRIGGERSIMULATORPINS2", 738, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field FORDINJECTORSMALLPULSESLOPE = Field.create("FORDINJECTORSMALLPULSESLOPE", 740, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field TRIGGERSIMULATORPINMODES1 = Field.create("TRIGGERSIMULATORPINMODES1", 742, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGERSIMULATORPINMODES2 = Field.create("TRIGGERSIMULATORPINMODES2", 743, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field MAF2ADCCHANNEL = Field.create("MAF2ADCCHANNEL", 744, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_745 = Field.create("ALIGNMENTFILL_AT_745", 745, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field O2HEATERPIN = Field.create("O2HEATERPIN", 746, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field O2HEATERPINMODETODO = Field.create("O2HEATERPINMODETODO", 748, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field LAMBDAPROTECTIONMINRPM = Field.create("LAMBDAPROTECTIONMINRPM", 749, FieldType.INT8).setScale(100.0).setBaseOffset(0); + public static final Field LAMBDAPROTECTIONMINLOAD = Field.create("LAMBDAPROTECTIONMINLOAD", 750, FieldType.INT8).setScale(10.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_751 = Field.create("ALIGNMENTFILL_AT_751", 751, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IS_ENABLED_SPI_1 = Field.create("IS_ENABLED_SPI_1", 752, FieldType.BIT, 0).setBaseOffset(0); + public static final Field IS_ENABLED_SPI_2 = Field.create("IS_ENABLED_SPI_2", 752, FieldType.BIT, 1).setBaseOffset(0); + public static final Field IS_ENABLED_SPI_3 = Field.create("IS_ENABLED_SPI_3", 752, FieldType.BIT, 2).setBaseOffset(0); + public static final Field ISSDCARDENABLED = Field.create("ISSDCARDENABLED", 752, FieldType.BIT, 3).setBaseOffset(0); + public static final Field RUSEFIVERBOSE29B = Field.create("RUSEFIVERBOSE29B", 752, FieldType.BIT, 4).setBaseOffset(0); + public static final Field RETHROWHARDFAULT = Field.create("RETHROWHARDFAULT", 752, FieldType.BIT, 5).setBaseOffset(0); + public static final Field ISHIP9011ENABLED = Field.create("ISHIP9011ENABLED", 752, FieldType.BIT, 6).setBaseOffset(0); + public static final Field REQUIREFOOTONBRAKETOCRANK = Field.create("REQUIREFOOTONBRAKETOCRANK", 752, FieldType.BIT, 7).setBaseOffset(0); + public static final Field VERBOSEQUAD = Field.create("VERBOSEQUAD", 752, FieldType.BIT, 8).setBaseOffset(0); + public static final Field USESTEPPERIDLE = Field.create("USESTEPPERIDLE", 752, FieldType.BIT, 9).setBaseOffset(0); + public static final Field ENABLEDSTEP1LIMITER = Field.create("ENABLEDSTEP1LIMITER", 752, FieldType.BIT, 10).setBaseOffset(0); + public static final Field USETPICADVANCEDMODE = Field.create("USETPICADVANCEDMODE", 752, FieldType.BIT, 11).setBaseOffset(0); + public static final Field LAMBDAPROTECTIONENABLE = Field.create("LAMBDAPROTECTIONENABLE", 752, FieldType.BIT, 12).setBaseOffset(0); + public static final Field VERBOSETLE8888 = Field.create("VERBOSETLE8888", 752, FieldType.BIT, 13).setBaseOffset(0); + public static final Field ENABLEVERBOSECANTX = Field.create("ENABLEVERBOSECANTX", 752, FieldType.BIT, 14).setBaseOffset(0); + public static final Field ETB1CONFIGURED = Field.create("ETB1CONFIGURED", 752, FieldType.BIT, 15).setBaseOffset(0); + public static final Field ETB2CONFIGURED = Field.create("ETB2CONFIGURED", 752, FieldType.BIT, 16).setBaseOffset(0); + public static final Field MEASUREMAPONLYINONECYLINDER = Field.create("MEASUREMAPONLYINONECYLINDER", 752, FieldType.BIT, 17).setBaseOffset(0); + public static final Field STEPPERFORCEPARKINGEVERYRESTART = Field.create("STEPPERFORCEPARKINGEVERYRESTART", 752, FieldType.BIT, 18).setBaseOffset(0); + public static final Field ISFASTERENGINESPINUPENABLED = Field.create("ISFASTERENGINESPINUPENABLED", 752, FieldType.BIT, 19).setBaseOffset(0); + public static final Field COASTINGFUELCUTENABLED = Field.create("COASTINGFUELCUTENABLED", 752, FieldType.BIT, 20).setBaseOffset(0); + public static final Field USEIACTABLEFORCOASTING = Field.create("USEIACTABLEFORCOASTING", 752, FieldType.BIT, 21).setBaseOffset(0); + public static final Field USENOISELESSTRIGGERDECODER = Field.create("USENOISELESSTRIGGERDECODER", 752, FieldType.BIT, 22).setBaseOffset(0); + public static final Field USEIDLETIMINGPIDCONTROL = Field.create("USEIDLETIMINGPIDCONTROL", 752, FieldType.BIT, 23).setBaseOffset(0); + public static final Field DISABLEETBWHENENGINESTOPPED = Field.create("DISABLEETBWHENENGINESTOPPED", 752, FieldType.BIT, 24).setBaseOffset(0); + public static final Field IS_ENABLED_SPI_4 = Field.create("IS_ENABLED_SPI_4", 752, FieldType.BIT, 25).setBaseOffset(0); + public static final Field PAUSEETBCONTROL = Field.create("PAUSEETBCONTROL", 752, FieldType.BIT, 26).setBaseOffset(0); + public static final Field ALIGNENGINESNIFFERATTDC = Field.create("ALIGNENGINESNIFFERATTDC", 752, FieldType.BIT, 27).setBaseOffset(0); + public static final Field VERBOSEKLINE = Field.create("VERBOSEKLINE", 752, FieldType.BIT, 28).setBaseOffset(0); + public static final Field IDLEINCREMENTALPIDCIC = Field.create("IDLEINCREMENTALPIDCIC", 752, FieldType.BIT, 29).setBaseOffset(0); + public static final Field ENABLEAEMXSERIES = Field.create("ENABLEAEMXSERIES", 752, FieldType.BIT, 30).setBaseOffset(0); + public static final Field LOGICANALYZERPINS1 = Field.create("LOGICANALYZERPINS1", 756, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LOGICANALYZERPINS2 = Field.create("LOGICANALYZERPINS2", 758, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LOGICANALYZERPINS3 = Field.create("LOGICANALYZERPINS3", 760, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LOGICANALYZERPINS4 = Field.create("LOGICANALYZERPINS4", 762, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field MAINRELAYPINMODE = Field.create("MAINRELAYPINMODE", 764, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_765 = Field.create("ALIGNMENTFILL_AT_765", 765, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HIP9011CSPIN = Field.create("HIP9011CSPIN", 766, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field HIP9011INTHOLDPIN = Field.create("HIP9011INTHOLDPIN", 768, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field HIP9011INTHOLDPINMODE = Field.create("HIP9011INTHOLDPINMODE", 770, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_771 = Field.create("ALIGNMENTFILL_AT_771", 771, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VERBOSECANBASEADDRESS = Field.create("VERBOSECANBASEADDRESS", 772, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field MC33_HVOLT = Field.create("MC33_HVOLT", 776, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MINIMUMBOOSTCLOSEDLOOPMAP = Field.create("MINIMUMBOOSTCLOSEDLOOPMAP", 777, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ACFANPIN = Field.create("ACFANPIN", 778, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field ACFANPINMODE = Field.create("ACFANPINMODE", 780, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field L9779SPIDEVICE = Field.create("L9779SPIDEVICE", 781, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IMUTYPE = Field.create("IMUTYPE", 782, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_783 = Field.create("ALIGNMENTFILL_AT_783", 783, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VEHICLEWEIGHT = Field.create("VEHICLEWEIGHT", 784, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLEPIDRPMUPPERLIMIT = Field.create("IDLEPIDRPMUPPERLIMIT", 786, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field APPLYNONLINEARBELOWPULSE = Field.create("APPLYNONLINEARBELOWPULSE", 788, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field LPS25BAROSENSORSCL = Field.create("LPS25BAROSENSORSCL", 790, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field LPS25BAROSENSORSDA = Field.create("LPS25BAROSENSORSDA", 792, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field VEHICLESPEEDSENSORINPUTPIN = Field.create("VEHICLESPEEDSENSORINPUTPIN", 794, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field CLUTCHUPPIN = Field.create("CLUTCHUPPIN", 796, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTORNONLINEARMODE = Field.create("INJECTORNONLINEARMODE", 798, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CLUTCHUPPINMODE = Field.create("CLUTCHUPPINMODE", 799, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field MAX31855_CS1 = Field.create("MAX31855_CS1", 800, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field MAX31855_CS2 = Field.create("MAX31855_CS2", 802, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field MAX31855_CS3 = Field.create("MAX31855_CS3", 804, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field MAX31855_CS4 = Field.create("MAX31855_CS4", 806, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field MAX31855_CS5 = Field.create("MAX31855_CS5", 808, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field MAX31855_CS6 = Field.create("MAX31855_CS6", 810, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field MAX31855_CS7 = Field.create("MAX31855_CS7", 812, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field MAX31855_CS8 = Field.create("MAX31855_CS8", 814, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field FLEXSENSORPIN = Field.create("FLEXSENSORPIN", 816, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TEST557PIN = Field.create("TEST557PIN", 818, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERDIRECTIONPINMODE = Field.create("STEPPERDIRECTIONPINMODE", 820, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field MC33972SPIDEVICE = Field.create("MC33972SPIDEVICE", 821, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STOICHRATIOSECONDARY = Field.create("STOICHRATIOSECONDARY", 822, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field ETBMAXIMUMPOSITION = Field.create("ETBMAXIMUMPOSITION", 823, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SDCARDLOGFREQUENCY = Field.create("SDCARDLOGFREQUENCY", 824, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLEPOSITIONCHANNEL = Field.create("IDLEPOSITIONCHANNEL", 826, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_827 = Field.create("ALIGNMENTFILL_AT_827", 827, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field DEBUGMAPAVERAGING = Field.create("DEBUGMAPAVERAGING", 828, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field STARTERRELAYDISABLEPIN = Field.create("STARTERRELAYDISABLEPIN", 830, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field STARTERRELAYDISABLEPINMODE = Field.create("STARTERRELAYDISABLEPINMODE", 832, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_833 = Field.create("ALIGNMENTFILL_AT_833", 833, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SECONDSOLENOIDPIN = Field.create("SECONDSOLENOIDPIN", 834, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field STARTSTOPBUTTONPIN = Field.create("STARTSTOPBUTTONPIN", 836, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_838 = Field.create("ALIGNMENTFILL_AT_838", 838, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MAPMINBUFFERLENGTH = Field.create("MAPMINBUFFERLENGTH", 840, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field IDLEPIDDEACTIVATIONTPSTHRESHOLD = Field.create("IDLEPIDDEACTIVATIONTPSTHRESHOLD", 844, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERPARKINGEXTRASTEPS = Field.create("STEPPERPARKINGEXTRASTEPS", 846, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TPS1SECONDARYMIN = Field.create("TPS1SECONDARYMIN", 848, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TPS1SECONDARYMAX = Field.create("TPS1SECONDARYMAX", 850, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ANTILAGRPMTRESHOLD = Field.create("ANTILAGRPMTRESHOLD", 852, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field STARTCRANKINGDURATION = Field.create("STARTCRANKINGDURATION", 854, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGERERRORPIN = Field.create("TRIGGERERRORPIN", 856, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGERERRORPINMODE = Field.create("TRIGGERERRORPINMODE", 858, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_859 = Field.create("ALIGNMENTFILL_AT_859", 859, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ACRELAYPIN = Field.create("ACRELAYPIN", 860, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LAMBDAPROTECTIONMINTPS = Field.create("LAMBDAPROTECTIONMINTPS", 862, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field LAMBDAPROTECTIONTIMEOUT = Field.create("LAMBDAPROTECTIONTIMEOUT", 863, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field LAMBDAPROTECTIONRESTORERPM = Field.create("LAMBDAPROTECTIONRESTORERPM", 864, FieldType.INT8).setScale(100.0).setBaseOffset(0); + public static final Field ACRELAYPINMODE = Field.create("ACRELAYPINMODE", 865, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_866 = Field.create("ALIGNMENTFILL_AT_866", 866, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTING1 = Field.create("SCRIPTSETTING1", 868, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTING2 = Field.create("SCRIPTSETTING2", 872, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTING3 = Field.create("SCRIPTSETTING3", 876, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTING4 = Field.create("SCRIPTSETTING4", 880, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTING5 = Field.create("SCRIPTSETTING5", 884, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTING6 = Field.create("SCRIPTSETTING6", 888, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTING7 = Field.create("SCRIPTSETTING7", 892, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTING8 = Field.create("SCRIPTSETTING8", 896, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field SPI1MOSIPIN = Field.create("SPI1MOSIPIN", 900, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI1MISOPIN = Field.create("SPI1MISOPIN", 902, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI1SCKPIN = Field.create("SPI1SCKPIN", 904, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI2MOSIPIN = Field.create("SPI2MOSIPIN", 906, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI2MISOPIN = Field.create("SPI2MISOPIN", 908, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI2SCKPIN = Field.create("SPI2SCKPIN", 910, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI3MOSIPIN = Field.create("SPI3MOSIPIN", 912, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI3MISOPIN = Field.create("SPI3MISOPIN", 914, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI3SCKPIN = Field.create("SPI3SCKPIN", 916, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field CDMINPUTPIN = Field.create("CDMINPUTPIN", 918, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field CONSOLEUARTDEVICE = Field.create("CONSOLEUARTDEVICE", 920, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final String[] sensor_chart_e = {"none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1"}; - public static final Field SENSORCHARTMODE = Field.create("SENSORCHARTMODE", 981, FieldType.INT8, sensor_chart_e).setScale(1.0).setBaseOffset(0); + public static final Field SENSORCHARTMODE = Field.create("SENSORCHARTMODE", 921, FieldType.INT8, sensor_chart_e).setScale(1.0).setBaseOffset(0); public static final String[] maf_sensor_type_e = {"v0", "v1", "v2", "v3"}; - public static final Field MAFSENSORTYPE = Field.create("MAFSENSORTYPE", 982, FieldType.INT8, maf_sensor_type_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_983 = Field.create("ALIGNMENTFILL_AT_983", 983, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CLUTCHUPPININVERTED = Field.create("CLUTCHUPPININVERTED", 984, FieldType.BIT, 0).setBaseOffset(0); - public static final Field CLUTCHDOWNPININVERTED = Field.create("CLUTCHDOWNPININVERTED", 984, FieldType.BIT, 1).setBaseOffset(0); - public static final Field USEHBRIDGESTODRIVEIDLESTEPPER = Field.create("USEHBRIDGESTODRIVEIDLESTEPPER", 984, FieldType.BIT, 2).setBaseOffset(0); - public static final Field MULTISPARKENABLE = Field.create("MULTISPARKENABLE", 984, FieldType.BIT, 3).setBaseOffset(0); - public static final Field ENABLELAUNCHRETARD = Field.create("ENABLELAUNCHRETARD", 984, FieldType.BIT, 4).setBaseOffset(0); - public static final Field CANINPUTBCM = Field.create("CANINPUTBCM", 984, FieldType.BIT, 5).setBaseOffset(0); - public static final Field CONSUMEOBDSENSORS = Field.create("CONSUMEOBDSENSORS", 984, FieldType.BIT, 6).setBaseOffset(0); - public static final Field ENABLECANVSS = Field.create("ENABLECANVSS", 984, FieldType.BIT, 7).setBaseOffset(0); - public static final Field ENABLEINNOVATELC2 = Field.create("ENABLEINNOVATELC2", 984, FieldType.BIT, 8).setBaseOffset(0); - public static final Field SHOWHUMANREADABLEWARNING = Field.create("SHOWHUMANREADABLEWARNING", 984, FieldType.BIT, 9).setBaseOffset(0); - public static final Field STFTIGNOREERRORMAGNITUDE = Field.create("STFTIGNOREERRORMAGNITUDE", 984, FieldType.BIT, 10).setBaseOffset(0); - public static final Field VVTBOOLEANFORVERYSPECIALCASES = Field.create("VVTBOOLEANFORVERYSPECIALCASES", 984, FieldType.BIT, 11).setBaseOffset(0); - public static final Field ENABLESOFTWAREKNOCK = Field.create("ENABLESOFTWAREKNOCK", 984, FieldType.BIT, 12).setBaseOffset(0); - public static final Field VERBOSEVVTDECODING = Field.create("VERBOSEVVTDECODING", 984, FieldType.BIT, 13).setBaseOffset(0); - public static final Field INVERTCAMVVTSIGNAL = Field.create("INVERTCAMVVTSIGNAL", 984, FieldType.BIT, 14).setBaseOffset(0); - public static final Field ALPHANUSEIAT = Field.create("ALPHANUSEIAT", 984, FieldType.BIT, 15).setBaseOffset(0); - public static final Field KNOCKBANKCYL1 = Field.create("KNOCKBANKCYL1", 984, FieldType.BIT, 16).setBaseOffset(0); - public static final Field KNOCKBANKCYL2 = Field.create("KNOCKBANKCYL2", 984, FieldType.BIT, 17).setBaseOffset(0); - public static final Field KNOCKBANKCYL3 = Field.create("KNOCKBANKCYL3", 984, FieldType.BIT, 18).setBaseOffset(0); - public static final Field KNOCKBANKCYL4 = Field.create("KNOCKBANKCYL4", 984, FieldType.BIT, 19).setBaseOffset(0); - public static final Field KNOCKBANKCYL5 = Field.create("KNOCKBANKCYL5", 984, FieldType.BIT, 20).setBaseOffset(0); - public static final Field KNOCKBANKCYL6 = Field.create("KNOCKBANKCYL6", 984, FieldType.BIT, 21).setBaseOffset(0); - public static final Field KNOCKBANKCYL7 = Field.create("KNOCKBANKCYL7", 984, FieldType.BIT, 22).setBaseOffset(0); - public static final Field KNOCKBANKCYL8 = Field.create("KNOCKBANKCYL8", 984, FieldType.BIT, 23).setBaseOffset(0); - public static final Field KNOCKBANKCYL9 = Field.create("KNOCKBANKCYL9", 984, FieldType.BIT, 24).setBaseOffset(0); - public static final Field KNOCKBANKCYL10 = Field.create("KNOCKBANKCYL10", 984, FieldType.BIT, 25).setBaseOffset(0); - public static final Field KNOCKBANKCYL11 = Field.create("KNOCKBANKCYL11", 984, FieldType.BIT, 26).setBaseOffset(0); - public static final Field KNOCKBANKCYL12 = Field.create("KNOCKBANKCYL12", 984, FieldType.BIT, 27).setBaseOffset(0); - public static final Field TCUENABLED = Field.create("TCUENABLED", 984, FieldType.BIT, 28).setBaseOffset(0); - public static final Field CANBROADCASTUSECHANNELTWO = Field.create("CANBROADCASTUSECHANNELTWO", 984, FieldType.BIT, 29).setBaseOffset(0); - public static final Field USERAWOUTPUTTODRIVEIDLESTEPPER = Field.create("USERAWOUTPUTTODRIVEIDLESTEPPER", 984, FieldType.BIT, 30).setBaseOffset(0); - public static final Field VERBOSECAN2 = Field.create("VERBOSECAN2", 984, FieldType.BIT, 31).setBaseOffset(0); - public static final Field ETBIO1_DIRECTIONPIN1 = Field.create("ETBIO1_DIRECTIONPIN1", 988, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ETBIO1_DIRECTIONPIN2 = Field.create("ETBIO1_DIRECTIONPIN2", 990, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ETBIO1_CONTROLPIN = Field.create("ETBIO1_CONTROLPIN", 992, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ETBIO1_DISABLEPIN = Field.create("ETBIO1_DISABLEPIN", 994, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ETBIO2_DIRECTIONPIN1 = Field.create("ETBIO2_DIRECTIONPIN1", 996, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ETBIO2_DIRECTIONPIN2 = Field.create("ETBIO2_DIRECTIONPIN2", 998, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ETBIO2_CONTROLPIN = Field.create("ETBIO2_CONTROLPIN", 1000, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ETBIO2_DISABLEPIN = Field.create("ETBIO2_DISABLEPIN", 1002, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCONTROLPIN = Field.create("BOOSTCONTROLPIN", 1004, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCONTROLPINMODE = Field.create("BOOSTCONTROLPINMODE", 1006, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1007 = Field.create("ALIGNMENTFILL_AT_1007", 1007, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALSACTIVATEPIN = Field.create("ALSACTIVATEPIN", 1008, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LAUNCHACTIVATEPIN = Field.create("LAUNCHACTIVATEPIN", 1010, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTPID_PFACTOR = Field.create("BOOSTPID_PFACTOR", 1012, FieldType.FLOAT).setBaseOffset(0); - public static final Field BOOSTPID_IFACTOR = Field.create("BOOSTPID_IFACTOR", 1016, FieldType.FLOAT).setBaseOffset(0); - public static final Field BOOSTPID_DFACTOR = Field.create("BOOSTPID_DFACTOR", 1020, FieldType.FLOAT).setBaseOffset(0); - public static final Field BOOSTPID_OFFSET = Field.create("BOOSTPID_OFFSET", 1024, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTPID_PERIODMS = Field.create("BOOSTPID_PERIODMS", 1026, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTPID_MINVALUE = Field.create("BOOSTPID_MINVALUE", 1028, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTPID_MAXVALUE = Field.create("BOOSTPID_MAXVALUE", 1030, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTTYPE = Field.create("BOOSTTYPE", 1032, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONKEYDIGITALPINMODE = Field.create("IGNITIONKEYDIGITALPINMODE", 1033, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONKEYDIGITALPIN = Field.create("IGNITIONKEYDIGITALPIN", 1034, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTPWMFREQUENCY = Field.create("BOOSTPWMFREQUENCY", 1036, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field MAFSENSORTYPE = Field.create("MAFSENSORTYPE", 922, FieldType.INT8, maf_sensor_type_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_923 = Field.create("ALIGNMENTFILL_AT_923", 923, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CLUTCHUPPININVERTED = Field.create("CLUTCHUPPININVERTED", 924, FieldType.BIT, 0).setBaseOffset(0); + public static final Field CLUTCHDOWNPININVERTED = Field.create("CLUTCHDOWNPININVERTED", 924, FieldType.BIT, 1).setBaseOffset(0); + public static final Field USEHBRIDGESTODRIVEIDLESTEPPER = Field.create("USEHBRIDGESTODRIVEIDLESTEPPER", 924, FieldType.BIT, 2).setBaseOffset(0); + public static final Field MULTISPARKENABLE = Field.create("MULTISPARKENABLE", 924, FieldType.BIT, 3).setBaseOffset(0); + public static final Field ENABLELAUNCHRETARD = Field.create("ENABLELAUNCHRETARD", 924, FieldType.BIT, 4).setBaseOffset(0); + public static final Field CANINPUTBCM = Field.create("CANINPUTBCM", 924, FieldType.BIT, 5).setBaseOffset(0); + public static final Field CONSUMEOBDSENSORS = Field.create("CONSUMEOBDSENSORS", 924, FieldType.BIT, 6).setBaseOffset(0); + public static final Field ENABLECANVSS = Field.create("ENABLECANVSS", 924, FieldType.BIT, 7).setBaseOffset(0); + public static final Field ENABLEINNOVATELC2 = Field.create("ENABLEINNOVATELC2", 924, FieldType.BIT, 8).setBaseOffset(0); + public static final Field SHOWHUMANREADABLEWARNING = Field.create("SHOWHUMANREADABLEWARNING", 924, FieldType.BIT, 9).setBaseOffset(0); + public static final Field STFTIGNOREERRORMAGNITUDE = Field.create("STFTIGNOREERRORMAGNITUDE", 924, FieldType.BIT, 10).setBaseOffset(0); + public static final Field VVTBOOLEANFORVERYSPECIALCASES = Field.create("VVTBOOLEANFORVERYSPECIALCASES", 924, FieldType.BIT, 11).setBaseOffset(0); + public static final Field ENABLESOFTWAREKNOCK = Field.create("ENABLESOFTWAREKNOCK", 924, FieldType.BIT, 12).setBaseOffset(0); + public static final Field VERBOSEVVTDECODING = Field.create("VERBOSEVVTDECODING", 924, FieldType.BIT, 13).setBaseOffset(0); + public static final Field INVERTCAMVVTSIGNAL = Field.create("INVERTCAMVVTSIGNAL", 924, FieldType.BIT, 14).setBaseOffset(0); + public static final Field ALPHANUSEIAT = Field.create("ALPHANUSEIAT", 924, FieldType.BIT, 15).setBaseOffset(0); + public static final Field KNOCKBANKCYL1 = Field.create("KNOCKBANKCYL1", 924, FieldType.BIT, 16).setBaseOffset(0); + public static final Field KNOCKBANKCYL2 = Field.create("KNOCKBANKCYL2", 924, FieldType.BIT, 17).setBaseOffset(0); + public static final Field KNOCKBANKCYL3 = Field.create("KNOCKBANKCYL3", 924, FieldType.BIT, 18).setBaseOffset(0); + public static final Field KNOCKBANKCYL4 = Field.create("KNOCKBANKCYL4", 924, FieldType.BIT, 19).setBaseOffset(0); + public static final Field KNOCKBANKCYL5 = Field.create("KNOCKBANKCYL5", 924, FieldType.BIT, 20).setBaseOffset(0); + public static final Field KNOCKBANKCYL6 = Field.create("KNOCKBANKCYL6", 924, FieldType.BIT, 21).setBaseOffset(0); + public static final Field KNOCKBANKCYL7 = Field.create("KNOCKBANKCYL7", 924, FieldType.BIT, 22).setBaseOffset(0); + public static final Field KNOCKBANKCYL8 = Field.create("KNOCKBANKCYL8", 924, FieldType.BIT, 23).setBaseOffset(0); + public static final Field KNOCKBANKCYL9 = Field.create("KNOCKBANKCYL9", 924, FieldType.BIT, 24).setBaseOffset(0); + public static final Field KNOCKBANKCYL10 = Field.create("KNOCKBANKCYL10", 924, FieldType.BIT, 25).setBaseOffset(0); + public static final Field KNOCKBANKCYL11 = Field.create("KNOCKBANKCYL11", 924, FieldType.BIT, 26).setBaseOffset(0); + public static final Field KNOCKBANKCYL12 = Field.create("KNOCKBANKCYL12", 924, FieldType.BIT, 27).setBaseOffset(0); + public static final Field TCUENABLED = Field.create("TCUENABLED", 924, FieldType.BIT, 28).setBaseOffset(0); + public static final Field CANBROADCASTUSECHANNELTWO = Field.create("CANBROADCASTUSECHANNELTWO", 924, FieldType.BIT, 29).setBaseOffset(0); + public static final Field USERAWOUTPUTTODRIVEIDLESTEPPER = Field.create("USERAWOUTPUTTODRIVEIDLESTEPPER", 924, FieldType.BIT, 30).setBaseOffset(0); + public static final Field VERBOSECAN2 = Field.create("VERBOSECAN2", 924, FieldType.BIT, 31).setBaseOffset(0); + public static final Field ETBIO1_DIRECTIONPIN1 = Field.create("ETBIO1_DIRECTIONPIN1", 928, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ETBIO1_DIRECTIONPIN2 = Field.create("ETBIO1_DIRECTIONPIN2", 930, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ETBIO1_CONTROLPIN = Field.create("ETBIO1_CONTROLPIN", 932, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ETBIO1_DISABLEPIN = Field.create("ETBIO1_DISABLEPIN", 934, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ETBIO2_DIRECTIONPIN1 = Field.create("ETBIO2_DIRECTIONPIN1", 936, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ETBIO2_DIRECTIONPIN2 = Field.create("ETBIO2_DIRECTIONPIN2", 938, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ETBIO2_CONTROLPIN = Field.create("ETBIO2_CONTROLPIN", 940, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ETBIO2_DISABLEPIN = Field.create("ETBIO2_DISABLEPIN", 942, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCONTROLPIN = Field.create("BOOSTCONTROLPIN", 944, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCONTROLPINMODE = Field.create("BOOSTCONTROLPINMODE", 946, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_947 = Field.create("ALIGNMENTFILL_AT_947", 947, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALSACTIVATEPIN = Field.create("ALSACTIVATEPIN", 948, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LAUNCHACTIVATEPIN = Field.create("LAUNCHACTIVATEPIN", 950, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTPID_PFACTOR = Field.create("BOOSTPID_PFACTOR", 952, FieldType.FLOAT).setBaseOffset(0); + public static final Field BOOSTPID_IFACTOR = Field.create("BOOSTPID_IFACTOR", 956, FieldType.FLOAT).setBaseOffset(0); + public static final Field BOOSTPID_DFACTOR = Field.create("BOOSTPID_DFACTOR", 960, FieldType.FLOAT).setBaseOffset(0); + public static final Field BOOSTPID_OFFSET = Field.create("BOOSTPID_OFFSET", 964, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTPID_PERIODMS = Field.create("BOOSTPID_PERIODMS", 966, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTPID_MINVALUE = Field.create("BOOSTPID_MINVALUE", 968, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTPID_MAXVALUE = Field.create("BOOSTPID_MAXVALUE", 970, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTTYPE = Field.create("BOOSTTYPE", 972, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONKEYDIGITALPINMODE = Field.create("IGNITIONKEYDIGITALPINMODE", 973, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONKEYDIGITALPIN = Field.create("IGNITIONKEYDIGITALPIN", 974, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTPWMFREQUENCY = Field.create("BOOSTPWMFREQUENCY", 976, FieldType.INT).setScale(1.0).setBaseOffset(0); public static final String[] launchActivationMode_e = {"Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal"}; - public static final Field LAUNCHACTIVATIONMODE = Field.create("LAUNCHACTIVATIONMODE", 1040, FieldType.INT8, launchActivationMode_e).setScale(1.0).setBaseOffset(0); + public static final Field LAUNCHACTIVATIONMODE = Field.create("LAUNCHACTIVATIONMODE", 980, FieldType.INT8, launchActivationMode_e).setScale(1.0).setBaseOffset(0); public static final String[] antiLagActivationMode_e = {"Switch Input", "Always Active"}; - public static final Field ANTILAGACTIVATIONMODE = Field.create("ANTILAGACTIVATIONMODE", 1041, FieldType.INT8, antiLagActivationMode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1042 = Field.create("ALIGNMENTFILL_AT_1042", 1042, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field LAUNCHSPEEDTHRESHOLD = Field.create("LAUNCHSPEEDTHRESHOLD", 1044, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field LAUNCHRPMWINDOW = Field.create("LAUNCHRPMWINDOW", 1048, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field LAUNCHSPARKSKIPPERCENT = Field.create("LAUNCHSPARKSKIPPERCENT", 1052, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field LAUNCHBOOSTDUTY = Field.create("LAUNCHBOOSTDUTY", 1056, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field MAGICNUMBERAVAILABLEFORDEVTRICKS = Field.create("MAGICNUMBERAVAILABLEFORDEVTRICKS", 1060, FieldType.FLOAT).setBaseOffset(0); - public static final Field TURBOCHARGERFILTER = Field.create("TURBOCHARGERFILTER", 1064, FieldType.FLOAT).setBaseOffset(0); - public static final Field LAUNCHTPSTHRESHOLD = Field.create("LAUNCHTPSTHRESHOLD", 1068, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field LAUNCHACTIVATEDELAY = Field.create("LAUNCHACTIVATEDELAY", 1072, FieldType.FLOAT).setBaseOffset(0); - public static final Field STFT_MAXIDLEREGIONRPM = Field.create("STFT_MAXIDLEREGIONRPM", 1076, FieldType.INT8).setScale(50.0).setBaseOffset(0); - public static final Field STFT_MAXOVERRUNLOAD = Field.create("STFT_MAXOVERRUNLOAD", 1077, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_MINPOWERLOAD = Field.create("STFT_MINPOWERLOAD", 1078, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_DEADBAND = Field.create("STFT_DEADBAND", 1079, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field STFT_MINCLT = Field.create("STFT_MINCLT", 1080, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_MINAFR = Field.create("STFT_MINAFR", 1081, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field STFT_MAXAFR = Field.create("STFT_MAXAFR", 1082, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field STFT_STARTUPDELAY = Field.create("STFT_STARTUPDELAY", 1083, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_CELLCFGS1_MAXADD = Field.create("STFT_CELLCFGS1_MAXADD", 1084, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_CELLCFGS1_MAXREMOVE = Field.create("STFT_CELLCFGS1_MAXREMOVE", 1085, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_CELLCFGS1_TIMECONSTANT = Field.create("STFT_CELLCFGS1_TIMECONSTANT", 1086, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field STFT_CELLCFGS2_MAXADD = Field.create("STFT_CELLCFGS2_MAXADD", 1088, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_CELLCFGS2_MAXREMOVE = Field.create("STFT_CELLCFGS2_MAXREMOVE", 1089, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_CELLCFGS2_TIMECONSTANT = Field.create("STFT_CELLCFGS2_TIMECONSTANT", 1090, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field STFT_CELLCFGS3_MAXADD = Field.create("STFT_CELLCFGS3_MAXADD", 1092, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_CELLCFGS3_MAXREMOVE = Field.create("STFT_CELLCFGS3_MAXREMOVE", 1093, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_CELLCFGS3_TIMECONSTANT = Field.create("STFT_CELLCFGS3_TIMECONSTANT", 1094, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field STFT_CELLCFGS4_MAXADD = Field.create("STFT_CELLCFGS4_MAXADD", 1096, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_CELLCFGS4_MAXREMOVE = Field.create("STFT_CELLCFGS4_MAXREMOVE", 1097, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STFT_CELLCFGS4_TIMECONSTANT = Field.create("STFT_CELLCFGS4_TIMECONSTANT", 1098, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field STEPPERDCIO1_DIRECTIONPIN1 = Field.create("STEPPERDCIO1_DIRECTIONPIN1", 1100, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERDCIO1_DIRECTIONPIN2 = Field.create("STEPPERDCIO1_DIRECTIONPIN2", 1102, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERDCIO1_CONTROLPIN = Field.create("STEPPERDCIO1_CONTROLPIN", 1104, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERDCIO1_DISABLEPIN = Field.create("STEPPERDCIO1_DISABLEPIN", 1106, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERDCIO2_DIRECTIONPIN1 = Field.create("STEPPERDCIO2_DIRECTIONPIN1", 1108, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERDCIO2_DIRECTIONPIN2 = Field.create("STEPPERDCIO2_DIRECTIONPIN2", 1110, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERDCIO2_CONTROLPIN = Field.create("STEPPERDCIO2_CONTROLPIN", 1112, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERDCIO2_DISABLEPIN = Field.create("STEPPERDCIO2_DISABLEPIN", 1114, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ENGINEMAKE = Field.create("ENGINEMAKE", 1116, 32, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field ENGINECODE = Field.create("ENGINECODE", 1148, 32, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field VEHICLENAME = Field.create("VEHICLENAME", 1180, 32, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID1 = Field.create("TCU_SOLENOID1", 1212, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID2 = Field.create("TCU_SOLENOID2", 1214, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID3 = Field.create("TCU_SOLENOID3", 1216, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID4 = Field.create("TCU_SOLENOID4", 1218, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID5 = Field.create("TCU_SOLENOID5", 1220, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID6 = Field.create("TCU_SOLENOID6", 1222, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field ETBFUNCTIONS1 = Field.create("ETBFUNCTIONS1", 1224, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ETBFUNCTIONS2 = Field.create("ETBFUNCTIONS2", 1225, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field DRV8860SPIDEVICE = Field.create("DRV8860SPIDEVICE", 1226, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1227 = Field.create("ALIGNMENTFILL_AT_1227", 1227, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field DRV8860_CS = Field.create("DRV8860_CS", 1228, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field DRV8860_CSPINMODE = Field.create("DRV8860_CSPINMODE", 1230, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1231 = Field.create("ALIGNMENTFILL_AT_1231", 1231, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field DRV8860_MISO = Field.create("DRV8860_MISO", 1232, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field FUELLEVELBINS = Field.create("FUELLEVELBINS", 1234, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field LUAOUTPUTPINS1 = Field.create("LUAOUTPUTPINS1", 1250, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUAOUTPUTPINS2 = Field.create("LUAOUTPUTPINS2", 1252, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUAOUTPUTPINS3 = Field.create("LUAOUTPUTPINS3", 1254, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUAOUTPUTPINS4 = Field.create("LUAOUTPUTPINS4", 1256, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUAOUTPUTPINS5 = Field.create("LUAOUTPUTPINS5", 1258, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUAOUTPUTPINS6 = Field.create("LUAOUTPUTPINS6", 1260, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUAOUTPUTPINS7 = Field.create("LUAOUTPUTPINS7", 1262, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUAOUTPUTPINS8 = Field.create("LUAOUTPUTPINS8", 1264, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1266 = Field.create("ALIGNMENTFILL_AT_1266", 1266, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VVTOFFSETS1 = Field.create("VVTOFFSETS1", 1268, FieldType.FLOAT).setBaseOffset(0); - public static final Field VVTOFFSETS2 = Field.create("VVTOFFSETS2", 1272, FieldType.FLOAT).setBaseOffset(0); - public static final Field VVTOFFSETS3 = Field.create("VVTOFFSETS3", 1276, FieldType.FLOAT).setBaseOffset(0); - public static final Field VVTOFFSETS4 = Field.create("VVTOFFSETS4", 1280, FieldType.FLOAT).setBaseOffset(0); - public static final Field VRTHRESHOLD1_RPMBINS = Field.create("VRTHRESHOLD1_RPMBINS", 1284, FieldType.INT8).setScale(50.0).setBaseOffset(0); - public static final Field VRTHRESHOLD1_VALUES = Field.create("VRTHRESHOLD1_VALUES", 1290, FieldType.INT8).setScale(0.01).setBaseOffset(0); - public static final Field VRTHRESHOLD1_PIN = Field.create("VRTHRESHOLD1_PIN", 1296, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field VRTHRESHOLD1_ALIGNMENTFILL_AT_14 = Field.create("VRTHRESHOLD1_ALIGNMENTFILL_AT_14", 1298, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VRTHRESHOLD2_RPMBINS = Field.create("VRTHRESHOLD2_RPMBINS", 1300, FieldType.INT8).setScale(50.0).setBaseOffset(0); - public static final Field VRTHRESHOLD2_VALUES = Field.create("VRTHRESHOLD2_VALUES", 1306, FieldType.INT8).setScale(0.01).setBaseOffset(0); - public static final Field VRTHRESHOLD2_PIN = Field.create("VRTHRESHOLD2_PIN", 1312, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field VRTHRESHOLD2_ALIGNMENTFILL_AT_14 = Field.create("VRTHRESHOLD2_ALIGNMENTFILL_AT_14", 1314, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWMNOTE1 = Field.create("GPPWMNOTE1", 1316, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field GPPWMNOTE2 = Field.create("GPPWMNOTE2", 1332, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field GPPWMNOTE3 = Field.create("GPPWMNOTE3", 1348, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field GPPWMNOTE4 = Field.create("GPPWMNOTE4", 1364, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field TPS2SECONDARYMIN = Field.create("TPS2SECONDARYMIN", 1380, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TPS2SECONDARYMAX = Field.create("TPS2SECONDARYMAX", 1382, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field WIDEBANDONSECONDBUS = Field.create("WIDEBANDONSECONDBUS", 1384, FieldType.BIT, 0).setBaseOffset(0); - public static final Field FUELCLOSEDLOOPCORRECTIONENABLED = Field.create("FUELCLOSEDLOOPCORRECTIONENABLED", 1384, FieldType.BIT, 1).setBaseOffset(0); - public static final Field ODDFIREENGINE = Field.create("ODDFIREENGINE", 1384, FieldType.BIT, 2).setBaseOffset(0); - public static final Field BOARDUSETACHPULLUP = Field.create("BOARDUSETACHPULLUP", 1384, FieldType.BIT, 3).setBaseOffset(0); - public static final Field BOARDUSETEMPPULLUP = Field.create("BOARDUSETEMPPULLUP", 1384, FieldType.BIT, 4).setBaseOffset(0); - public static final Field YESUNDERSTANDLOCKING = Field.create("YESUNDERSTANDLOCKING", 1384, FieldType.BIT, 5).setBaseOffset(0); - public static final Field SILENTTRIGGERERROR = Field.create("SILENTTRIGGERERROR", 1384, FieldType.BIT, 6).setBaseOffset(0); - public static final Field USELINEARCLTSENSOR = Field.create("USELINEARCLTSENSOR", 1384, FieldType.BIT, 7).setBaseOffset(0); - public static final Field CANREADENABLED = Field.create("CANREADENABLED", 1384, FieldType.BIT, 8).setBaseOffset(0); - public static final Field CANWRITEENABLED = Field.create("CANWRITEENABLED", 1384, FieldType.BIT, 9).setBaseOffset(0); - public static final Field USELINEARIATSENSOR = Field.create("USELINEARIATSENSOR", 1384, FieldType.BIT, 10).setBaseOffset(0); - public static final Field BOARDUSE2STEPPULLDOWN = Field.create("BOARDUSE2STEPPULLDOWN", 1384, FieldType.BIT, 11).setBaseOffset(0); - public static final Field TACHPULSEDURATIONASDUTYCYCLE = Field.create("TACHPULSEDURATIONASDUTYCYCLE", 1384, FieldType.BIT, 12).setBaseOffset(0); - public static final Field ISALTERNATORCONTROLENABLED = Field.create("ISALTERNATORCONTROLENABLED", 1384, FieldType.BIT, 13).setBaseOffset(0); - public static final Field INVERTPRIMARYTRIGGERSIGNAL = Field.create("INVERTPRIMARYTRIGGERSIGNAL", 1384, FieldType.BIT, 14).setBaseOffset(0); - public static final Field INVERTSECONDARYTRIGGERSIGNAL = Field.create("INVERTSECONDARYTRIGGERSIGNAL", 1384, FieldType.BIT, 15).setBaseOffset(0); - public static final Field CUTFUELONHARDLIMIT = Field.create("CUTFUELONHARDLIMIT", 1384, FieldType.BIT, 16).setBaseOffset(0); - public static final Field CUTSPARKONHARDLIMIT = Field.create("CUTSPARKONHARDLIMIT", 1384, FieldType.BIT, 17).setBaseOffset(0); - public static final Field LAUNCHFUELCUTENABLE = Field.create("LAUNCHFUELCUTENABLE", 1384, FieldType.BIT, 18).setBaseOffset(0); - public static final Field LAUNCHSPARKCUTENABLE = Field.create("LAUNCHSPARKCUTENABLE", 1384, FieldType.BIT, 19).setBaseOffset(0); - public static final Field BOARDUSECRANKPULLUP = Field.create("BOARDUSECRANKPULLUP", 1384, FieldType.BIT, 20).setBaseOffset(0); - public static final Field BOARDUSECAMPULLDOWN = Field.create("BOARDUSECAMPULLDOWN", 1384, FieldType.BIT, 21).setBaseOffset(0); - public static final Field BOARDUSECAMVRPULLUP = Field.create("BOARDUSECAMVRPULLUP", 1384, FieldType.BIT, 22).setBaseOffset(0); - public static final Field BOARDUSED2PULLDOWN = Field.create("BOARDUSED2PULLDOWN", 1384, FieldType.BIT, 23).setBaseOffset(0); - public static final Field BOARDUSED3PULLDOWN = Field.create("BOARDUSED3PULLDOWN", 1384, FieldType.BIT, 24).setBaseOffset(0); - public static final Field BOARDUSED4PULLDOWN = Field.create("BOARDUSED4PULLDOWN", 1384, FieldType.BIT, 25).setBaseOffset(0); - public static final Field BOARDUSED5PULLDOWN = Field.create("BOARDUSED5PULLDOWN", 1384, FieldType.BIT, 26).setBaseOffset(0); - public static final Field VERBOSEISOTP = Field.create("VERBOSEISOTP", 1384, FieldType.BIT, 27).setBaseOffset(0); - public static final Field ENGINESNIFFERFOCUSONINPUTS = Field.create("ENGINESNIFFERFOCUSONINPUTS", 1384, FieldType.BIT, 28).setBaseOffset(0); - public static final Field LAUNCHACTIVATEINVERTED = Field.create("LAUNCHACTIVATEINVERTED", 1384, FieldType.BIT, 29).setBaseOffset(0); - public static final Field TWOSTROKE = Field.create("TWOSTROKE", 1384, FieldType.BIT, 30).setBaseOffset(0); - public static final Field SKIPPEDWHEELONCAM = Field.create("SKIPPEDWHEELONCAM", 1384, FieldType.BIT, 31).setBaseOffset(0); - public static final Field HIPOUTPUTCHANNEL = Field.create("HIPOUTPUTCHANNEL", 1388, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1389 = Field.create("ALIGNMENTFILL_AT_1389", 1389, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ACSWITCH = Field.create("ACSWITCH", 1390, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field VREFADCCHANNEL = Field.create("VREFADCCHANNEL", 1392, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field ETBNEUTRALPOSITION = Field.create("ETBNEUTRALPOSITION", 1393, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IDLEMODE = Field.create("IDLEMODE", 1394, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1395 = Field.create("ALIGNMENTFILL_AT_1395", 1395, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ISINJECTIONENABLED = Field.create("ISINJECTIONENABLED", 1396, FieldType.BIT, 0).setBaseOffset(0); - public static final Field ISIGNITIONENABLED = Field.create("ISIGNITIONENABLED", 1396, FieldType.BIT, 1).setBaseOffset(0); - public static final Field ISCYLINDERCLEANUPENABLED = Field.create("ISCYLINDERCLEANUPENABLED", 1396, FieldType.BIT, 2).setBaseOffset(0); - public static final Field COMPLEXWALLMODEL = Field.create("COMPLEXWALLMODEL", 1396, FieldType.BIT, 3).setBaseOffset(0); - public static final Field ALWAYSINSTANTRPM = Field.create("ALWAYSINSTANTRPM", 1396, FieldType.BIT, 4).setBaseOffset(0); - public static final Field ISMAPAVERAGINGENABLED = Field.create("ISMAPAVERAGINGENABLED", 1396, FieldType.BIT, 5).setBaseOffset(0); - public static final Field OVERRIDECRANKINGIACSETTING = Field.create("OVERRIDECRANKINGIACSETTING", 1396, FieldType.BIT, 6).setBaseOffset(0); - public static final Field USESEPARATEADVANCEFORIDLE = Field.create("USESEPARATEADVANCEFORIDLE", 1396, FieldType.BIT, 7).setBaseOffset(0); - public static final Field ISWAVEANALYZERENABLED = Field.create("ISWAVEANALYZERENABLED", 1396, FieldType.BIT, 8).setBaseOffset(0); - public static final Field USESEPARATEVEFORIDLE = Field.create("USESEPARATEVEFORIDLE", 1396, FieldType.BIT, 9).setBaseOffset(0); - public static final Field VERBOSETRIGGERSYNCHDETAILS = Field.create("VERBOSETRIGGERSYNCHDETAILS", 1396, FieldType.BIT, 10).setBaseOffset(0); - public static final Field ISMANUALSPINNINGMODE = Field.create("ISMANUALSPINNINGMODE", 1396, FieldType.BIT, 11).setBaseOffset(0); - public static final Field CUTFUELINACR = Field.create("CUTFUELINACR", 1396, FieldType.BIT, 12).setBaseOffset(0); - public static final Field HONDAK = Field.create("HONDAK", 1396, FieldType.BIT, 13).setBaseOffset(0); - public static final Field TWOWIREBATCHIGNITION = Field.create("TWOWIREBATCHIGNITION", 1396, FieldType.BIT, 14).setBaseOffset(0); - public static final Field USEFIXEDBAROCORRFROMMAP = Field.create("USEFIXEDBAROCORRFROMMAP", 1396, FieldType.BIT, 15).setBaseOffset(0); - public static final Field USESEPARATEADVANCEFORCRANKING = Field.create("USESEPARATEADVANCEFORCRANKING", 1396, FieldType.BIT, 16).setBaseOffset(0); - public static final Field USEADVANCECORRECTIONSFORCRANKING = Field.create("USEADVANCECORRECTIONSFORCRANKING", 1396, FieldType.BIT, 17).setBaseOffset(0); - public static final Field FLEXCRANKING = Field.create("FLEXCRANKING", 1396, FieldType.BIT, 18).setBaseOffset(0); - public static final Field USEIACPIDMULTTABLE = Field.create("USEIACPIDMULTTABLE", 1396, FieldType.BIT, 19).setBaseOffset(0); - public static final Field ISBOOSTCONTROLENABLED = Field.create("ISBOOSTCONTROLENABLED", 1396, FieldType.BIT, 20).setBaseOffset(0); - public static final Field LAUNCHSMOOTHRETARD = Field.create("LAUNCHSMOOTHRETARD", 1396, FieldType.BIT, 21).setBaseOffset(0); - public static final Field ISPHASESYNCREQUIREDFORIGNITION = Field.create("ISPHASESYNCREQUIREDFORIGNITION", 1396, FieldType.BIT, 22).setBaseOffset(0); - public static final Field USECLTBASEDRPMLIMIT = Field.create("USECLTBASEDRPMLIMIT", 1396, FieldType.BIT, 23).setBaseOffset(0); - public static final Field FORCEO2HEATING = Field.create("FORCEO2HEATING", 1396, FieldType.BIT, 24).setBaseOffset(0); - public static final Field INVERTVVTCONTROLINTAKE = Field.create("INVERTVVTCONTROLINTAKE", 1396, FieldType.BIT, 25).setBaseOffset(0); - public static final Field INVERTVVTCONTROLEXHAUST = Field.create("INVERTVVTCONTROLEXHAUST", 1396, FieldType.BIT, 26).setBaseOffset(0); - public static final Field USEBIQUADONAUXSPEEDSENSORS = Field.create("USEBIQUADONAUXSPEEDSENSORS", 1396, FieldType.BIT, 27).setBaseOffset(0); - public static final Field SDTRIGGERLOG = Field.create("SDTRIGGERLOG", 1396, FieldType.BIT, 28).setBaseOffset(0); - public static final Field ALSACTIVATEINVERTED = Field.create("ALSACTIVATEINVERTED", 1396, FieldType.BIT, 29).setBaseOffset(0); - public static final Field STEPPER_DC_USE_TWO_WIRES = Field.create("STEPPER_DC_USE_TWO_WIRES", 1396, FieldType.BIT, 30).setBaseOffset(0); - public static final Field WATCHOUTFORLINEARTIME = Field.create("WATCHOUTFORLINEARTIME", 1396, FieldType.BIT, 31).setBaseOffset(0); - public static final Field ENGINECHARTSIZE = Field.create("ENGINECHARTSIZE", 1400, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field TURBOSPEEDSENSORMULTIPLIER = Field.create("TURBOSPEEDSENSORMULTIPLIER", 1404, FieldType.FLOAT).setBaseOffset(0); - public static final Field CAMINPUTSDEBUG1 = Field.create("CAMINPUTSDEBUG1", 1408, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field CAMINPUTSDEBUG2 = Field.create("CAMINPUTSDEBUG2", 1410, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field CAMINPUTSDEBUG3 = Field.create("CAMINPUTSDEBUG3", 1412, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field CAMINPUTSDEBUG4 = Field.create("CAMINPUTSDEBUG4", 1414, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ACIDLERPMTARGET = Field.create("ACIDLERPMTARGET", 1416, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field WARNINGPERIOD = Field.create("WARNINGPERIOD", 1418, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field KNOCKDETECTIONWINDOWSTART = Field.create("KNOCKDETECTIONWINDOWSTART", 1420, FieldType.FLOAT).setBaseOffset(0); - public static final Field KNOCKDETECTIONWINDOWEND = Field.create("KNOCKDETECTIONWINDOWEND", 1424, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLESTEPPERREACTIONTIME = Field.create("IDLESTEPPERREACTIONTIME", 1428, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLESTEPPERTOTALSTEPS = Field.create("IDLESTEPPERTOTALSTEPS", 1432, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field NOACCELAFTERHARDLIMITPERIODSECS = Field.create("NOACCELAFTERHARDLIMITPERIODSECS", 1436, FieldType.FLOAT).setBaseOffset(0); - public static final Field MAPAVERAGINGSCHEDULINGATINDEX = Field.create("MAPAVERAGINGSCHEDULINGATINDEX", 1440, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field TACHPULSEDURACTIONMS = Field.create("TACHPULSEDURACTIONMS", 1444, FieldType.FLOAT).setBaseOffset(0); - public static final Field WWAETAU = Field.create("WWAETAU", 1448, FieldType.FLOAT).setBaseOffset(0); - public static final Field ALTERNATORCONTROL_PFACTOR = Field.create("ALTERNATORCONTROL_PFACTOR", 1452, FieldType.FLOAT).setBaseOffset(0); - public static final Field ALTERNATORCONTROL_IFACTOR = Field.create("ALTERNATORCONTROL_IFACTOR", 1456, FieldType.FLOAT).setBaseOffset(0); - public static final Field ALTERNATORCONTROL_DFACTOR = Field.create("ALTERNATORCONTROL_DFACTOR", 1460, FieldType.FLOAT).setBaseOffset(0); - public static final Field ALTERNATORCONTROL_OFFSET = Field.create("ALTERNATORCONTROL_OFFSET", 1464, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALTERNATORCONTROL_PERIODMS = Field.create("ALTERNATORCONTROL_PERIODMS", 1466, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALTERNATORCONTROL_MINVALUE = Field.create("ALTERNATORCONTROL_MINVALUE", 1468, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALTERNATORCONTROL_MAXVALUE = Field.create("ALTERNATORCONTROL_MAXVALUE", 1470, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETB_PFACTOR = Field.create("ETB_PFACTOR", 1472, FieldType.FLOAT).setBaseOffset(0); - public static final Field ETB_IFACTOR = Field.create("ETB_IFACTOR", 1476, FieldType.FLOAT).setBaseOffset(0); - public static final Field ETB_DFACTOR = Field.create("ETB_DFACTOR", 1480, FieldType.FLOAT).setBaseOffset(0); - public static final Field ETB_OFFSET = Field.create("ETB_OFFSET", 1484, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETB_PERIODMS = Field.create("ETB_PERIODMS", 1486, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETB_MINVALUE = Field.create("ETB_MINVALUE", 1488, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETB_MAXVALUE = Field.create("ETB_MAXVALUE", 1490, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGERINPUTDEBUGPINS1 = Field.create("TRIGGERINPUTDEBUGPINS1", 1492, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGERINPUTDEBUGPINS2 = Field.create("TRIGGERINPUTDEBUGPINS2", 1494, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field AIRTAPERRPMRANGE = Field.create("AIRTAPERRPMRANGE", 1496, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TURBOSPEEDSENSORINPUTPIN = Field.create("TURBOSPEEDSENSORINPUTPIN", 1498, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TPS2MIN = Field.create("TPS2MIN", 1500, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TPS2MAX = Field.create("TPS2MAX", 1502, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field STARTERCONTROLPIN = Field.create("STARTERCONTROLPIN", 1504, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field STARTSTOPBUTTONMODE = Field.create("STARTSTOPBUTTONMODE", 1506, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1507 = Field.create("ALIGNMENTFILL_AT_1507", 1507, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MC33816_FLAG0 = Field.create("MC33816_FLAG0", 1508, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field TACHPULSEPERREV = Field.create("TACHPULSEPERREV", 1510, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1511 = Field.create("ALIGNMENTFILL_AT_1511", 1511, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MAPERRORDETECTIONTOOLOW = Field.create("MAPERRORDETECTIONTOOLOW", 1512, FieldType.FLOAT).setBaseOffset(0); - public static final Field MAPERRORDETECTIONTOOHIGH = Field.create("MAPERRORDETECTIONTOOHIGH", 1516, FieldType.FLOAT).setBaseOffset(0); - public static final Field MULTISPARKSPARKDURATION = Field.create("MULTISPARKSPARKDURATION", 1520, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field MULTISPARKDWELL = Field.create("MULTISPARKDWELL", 1522, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field IDLERPMPID_PFACTOR = Field.create("IDLERPMPID_PFACTOR", 1524, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLERPMPID_IFACTOR = Field.create("IDLERPMPID_IFACTOR", 1528, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLERPMPID_DFACTOR = Field.create("IDLERPMPID_DFACTOR", 1532, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLERPMPID_OFFSET = Field.create("IDLERPMPID_OFFSET", 1536, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLERPMPID_PERIODMS = Field.create("IDLERPMPID_PERIODMS", 1538, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLERPMPID_MINVALUE = Field.create("IDLERPMPID_MINVALUE", 1540, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLERPMPID_MAXVALUE = Field.create("IDLERPMPID_MAXVALUE", 1542, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field WWAEBETA = Field.create("WWAEBETA", 1544, FieldType.FLOAT).setBaseOffset(0); - public static final Field BINARYSERIALTXPIN = Field.create("BINARYSERIALTXPIN", 1548, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field BINARYSERIALRXPIN = Field.create("BINARYSERIALRXPIN", 1550, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field AUXVALVES1 = Field.create("AUXVALVES1", 1552, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field AUXVALVES2 = Field.create("AUXVALVES2", 1554, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field TCUUPSHIFTBUTTONPIN = Field.create("TCUUPSHIFTBUTTONPIN", 1556, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCUDOWNSHIFTBUTTONPIN = Field.create("TCUDOWNSHIFTBUTTONPIN", 1558, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field THROTTLEPEDALUPVOLTAGE = Field.create("THROTTLEPEDALUPVOLTAGE", 1560, FieldType.FLOAT).setBaseOffset(0); - public static final Field THROTTLEPEDALWOTVOLTAGE = Field.create("THROTTLEPEDALWOTVOLTAGE", 1564, FieldType.FLOAT).setBaseOffset(0); - public static final Field STARTUPFUELPUMPDURATION = Field.create("STARTUPFUELPUMPDURATION", 1568, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLEPIDRPMDEADZONE = Field.create("IDLEPIDRPMDEADZONE", 1570, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TARGETVBATT = Field.create("TARGETVBATT", 1572, FieldType.FLOAT).setBaseOffset(0); - public static final Field MC33810DISABLERECOVERYMODE = Field.create("MC33810DISABLERECOVERYMODE", 1576, FieldType.BIT, 0).setBaseOffset(0); - public static final Field MC33810GPGD0MODE = Field.create("MC33810GPGD0MODE", 1576, FieldType.BIT, 1).setBaseOffset(0); - public static final Field MC33810GPGD1MODE = Field.create("MC33810GPGD1MODE", 1576, FieldType.BIT, 2).setBaseOffset(0); - public static final Field MC33810GPGD2MODE = Field.create("MC33810GPGD2MODE", 1576, FieldType.BIT, 3).setBaseOffset(0); - public static final Field MC33810GPGD3MODE = Field.create("MC33810GPGD3MODE", 1576, FieldType.BIT, 4).setBaseOffset(0); - public static final Field ENABLEEXTENDEDCANBROADCAST = Field.create("ENABLEEXTENDEDCANBROADCAST", 1576, FieldType.BIT, 5).setBaseOffset(0); - public static final Field LUACANRXWORKAROUND = Field.create("LUACANRXWORKAROUND", 1576, FieldType.BIT, 6).setBaseOffset(0); - public static final Field FLEXSENSORINVERTED = Field.create("FLEXSENSORINVERTED", 1576, FieldType.BIT, 7).setBaseOffset(0); - public static final Field USEHARDSKIPINTRACTION = Field.create("USEHARDSKIPINTRACTION", 1576, FieldType.BIT, 8).setBaseOffset(0); - public static final Field FANCYSMARTS = Field.create("FANCYSMARTS", 1576, FieldType.BIT, 9).setBaseOffset(0); - public static final Field FANCYSMARTL = Field.create("FANCYSMARTL", 1576, FieldType.BIT, 10).setBaseOffset(0); - public static final Field USEAUXSPEEDFORSLIPRATIO = Field.create("USEAUXSPEEDFORSLIPRATIO", 1576, FieldType.BIT, 11).setBaseOffset(0); - public static final Field USEVSSASSECONDWHEELSPEED = Field.create("USEVSSASSECONDWHEELSPEED", 1576, FieldType.BIT, 12).setBaseOffset(0); - public static final Field IS_ENABLED_SPI_5 = Field.create("IS_ENABLED_SPI_5", 1576, FieldType.BIT, 13).setBaseOffset(0); - public static final Field IS_ENABLED_SPI_6 = Field.create("IS_ENABLED_SPI_6", 1576, FieldType.BIT, 14).setBaseOffset(0); - public static final Field ENABLEAEMXSERIESEGT = Field.create("ENABLEAEMXSERIESEGT", 1576, FieldType.BIT, 15).setBaseOffset(0); - public static final Field AFTERCRANKINGIACTAPERDURATION = Field.create("AFTERCRANKINGIACTAPERDURATION", 1580, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IACBYTPSTAPER = Field.create("IACBYTPSTAPER", 1582, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field AUXSERIALTXPIN = Field.create("AUXSERIALTXPIN", 1584, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field AUXSERIALRXPIN = Field.create("AUXSERIALRXPIN", 1586, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ACCELEROMETERCSPIN = Field.create("ACCELEROMETERCSPIN", 1588, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field TPSACCELLOOKBACK = Field.create("TPSACCELLOOKBACK", 1590, FieldType.INT8).setScale(0.05).setBaseOffset(0); - public static final Field COASTINGFUELCUTVSSLOW = Field.create("COASTINGFUELCUTVSSLOW", 1591, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field COASTINGFUELCUTVSSHIGH = Field.create("COASTINGFUELCUTVSSHIGH", 1592, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field NOFUELTRIMAFTERDFCOTIME = Field.create("NOFUELTRIMAFTERDFCOTIME", 1593, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1594 = Field.create("ALIGNMENTFILL_AT_1594", 1594, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TPSACCELENRICHMENTTHRESHOLD = Field.create("TPSACCELENRICHMENTTHRESHOLD", 1596, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXSPEEDSENSORINPUTPIN1 = Field.create("AUXSPEEDSENSORINPUTPIN1", 1600, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXSPEEDSENSORINPUTPIN2 = Field.create("AUXSPEEDSENSORINPUTPIN2", 1602, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TOTALGEARSCOUNT = Field.create("TOTALGEARSCOUNT", 1604, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONTIMINGMODE = Field.create("INJECTIONTIMINGMODE", 1605, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ANTILAGACTIVATIONMODE = Field.create("ANTILAGACTIVATIONMODE", 981, FieldType.INT8, antiLagActivationMode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_982 = Field.create("ALIGNMENTFILL_AT_982", 982, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field LAUNCHSPEEDTHRESHOLD = Field.create("LAUNCHSPEEDTHRESHOLD", 984, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field LAUNCHRPMWINDOW = Field.create("LAUNCHRPMWINDOW", 988, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field LAUNCHSPARKSKIPPERCENT = Field.create("LAUNCHSPARKSKIPPERCENT", 992, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field LAUNCHBOOSTDUTY = Field.create("LAUNCHBOOSTDUTY", 996, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field MAGICNUMBERAVAILABLEFORDEVTRICKS = Field.create("MAGICNUMBERAVAILABLEFORDEVTRICKS", 1000, FieldType.FLOAT).setBaseOffset(0); + public static final Field TURBOCHARGERFILTER = Field.create("TURBOCHARGERFILTER", 1004, FieldType.FLOAT).setBaseOffset(0); + public static final Field LAUNCHTPSTHRESHOLD = Field.create("LAUNCHTPSTHRESHOLD", 1008, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field LAUNCHACTIVATEDELAY = Field.create("LAUNCHACTIVATEDELAY", 1012, FieldType.FLOAT).setBaseOffset(0); + public static final Field STFT_MAXIDLEREGIONRPM = Field.create("STFT_MAXIDLEREGIONRPM", 1016, FieldType.INT8).setScale(50.0).setBaseOffset(0); + public static final Field STFT_MAXOVERRUNLOAD = Field.create("STFT_MAXOVERRUNLOAD", 1017, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_MINPOWERLOAD = Field.create("STFT_MINPOWERLOAD", 1018, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_DEADBAND = Field.create("STFT_DEADBAND", 1019, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field STFT_MINCLT = Field.create("STFT_MINCLT", 1020, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_MINAFR = Field.create("STFT_MINAFR", 1021, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field STFT_MAXAFR = Field.create("STFT_MAXAFR", 1022, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field STFT_STARTUPDELAY = Field.create("STFT_STARTUPDELAY", 1023, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_CELLCFGS1_MAXADD = Field.create("STFT_CELLCFGS1_MAXADD", 1024, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_CELLCFGS1_MAXREMOVE = Field.create("STFT_CELLCFGS1_MAXREMOVE", 1025, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_CELLCFGS1_TIMECONSTANT = Field.create("STFT_CELLCFGS1_TIMECONSTANT", 1026, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field STFT_CELLCFGS2_MAXADD = Field.create("STFT_CELLCFGS2_MAXADD", 1028, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_CELLCFGS2_MAXREMOVE = Field.create("STFT_CELLCFGS2_MAXREMOVE", 1029, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_CELLCFGS2_TIMECONSTANT = Field.create("STFT_CELLCFGS2_TIMECONSTANT", 1030, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field STFT_CELLCFGS3_MAXADD = Field.create("STFT_CELLCFGS3_MAXADD", 1032, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_CELLCFGS3_MAXREMOVE = Field.create("STFT_CELLCFGS3_MAXREMOVE", 1033, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_CELLCFGS3_TIMECONSTANT = Field.create("STFT_CELLCFGS3_TIMECONSTANT", 1034, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field STFT_CELLCFGS4_MAXADD = Field.create("STFT_CELLCFGS4_MAXADD", 1036, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_CELLCFGS4_MAXREMOVE = Field.create("STFT_CELLCFGS4_MAXREMOVE", 1037, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STFT_CELLCFGS4_TIMECONSTANT = Field.create("STFT_CELLCFGS4_TIMECONSTANT", 1038, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field STEPPERDCIO1_DIRECTIONPIN1 = Field.create("STEPPERDCIO1_DIRECTIONPIN1", 1040, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERDCIO1_DIRECTIONPIN2 = Field.create("STEPPERDCIO1_DIRECTIONPIN2", 1042, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERDCIO1_CONTROLPIN = Field.create("STEPPERDCIO1_CONTROLPIN", 1044, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERDCIO1_DISABLEPIN = Field.create("STEPPERDCIO1_DISABLEPIN", 1046, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERDCIO2_DIRECTIONPIN1 = Field.create("STEPPERDCIO2_DIRECTIONPIN1", 1048, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERDCIO2_DIRECTIONPIN2 = Field.create("STEPPERDCIO2_DIRECTIONPIN2", 1050, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERDCIO2_CONTROLPIN = Field.create("STEPPERDCIO2_CONTROLPIN", 1052, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERDCIO2_DISABLEPIN = Field.create("STEPPERDCIO2_DISABLEPIN", 1054, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ENGINEMAKE = Field.create("ENGINEMAKE", 1056, 32, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field ENGINECODE = Field.create("ENGINECODE", 1088, 32, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field VEHICLENAME = Field.create("VEHICLENAME", 1120, 32, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID1 = Field.create("TCU_SOLENOID1", 1152, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID2 = Field.create("TCU_SOLENOID2", 1154, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID3 = Field.create("TCU_SOLENOID3", 1156, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID4 = Field.create("TCU_SOLENOID4", 1158, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID5 = Field.create("TCU_SOLENOID5", 1160, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID6 = Field.create("TCU_SOLENOID6", 1162, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field ETBFUNCTIONS1 = Field.create("ETBFUNCTIONS1", 1164, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ETBFUNCTIONS2 = Field.create("ETBFUNCTIONS2", 1165, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field DRV8860SPIDEVICE = Field.create("DRV8860SPIDEVICE", 1166, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_1167 = Field.create("ALIGNMENTFILL_AT_1167", 1167, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field DRV8860_CS = Field.create("DRV8860_CS", 1168, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field DRV8860_CSPINMODE = Field.create("DRV8860_CSPINMODE", 1170, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_1171 = Field.create("ALIGNMENTFILL_AT_1171", 1171, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field DRV8860_MISO = Field.create("DRV8860_MISO", 1172, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field LUAOUTPUTPINS1 = Field.create("LUAOUTPUTPINS1", 1174, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUAOUTPUTPINS2 = Field.create("LUAOUTPUTPINS2", 1176, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUAOUTPUTPINS3 = Field.create("LUAOUTPUTPINS3", 1178, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUAOUTPUTPINS4 = Field.create("LUAOUTPUTPINS4", 1180, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUAOUTPUTPINS5 = Field.create("LUAOUTPUTPINS5", 1182, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUAOUTPUTPINS6 = Field.create("LUAOUTPUTPINS6", 1184, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUAOUTPUTPINS7 = Field.create("LUAOUTPUTPINS7", 1186, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUAOUTPUTPINS8 = Field.create("LUAOUTPUTPINS8", 1188, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_1190 = Field.create("ALIGNMENTFILL_AT_1190", 1190, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VVTOFFSETS1 = Field.create("VVTOFFSETS1", 1192, FieldType.FLOAT).setBaseOffset(0); + public static final Field VVTOFFSETS2 = Field.create("VVTOFFSETS2", 1196, FieldType.FLOAT).setBaseOffset(0); + public static final Field VVTOFFSETS3 = Field.create("VVTOFFSETS3", 1200, FieldType.FLOAT).setBaseOffset(0); + public static final Field VVTOFFSETS4 = Field.create("VVTOFFSETS4", 1204, FieldType.FLOAT).setBaseOffset(0); + public static final Field VRTHRESHOLD1_RPMBINS = Field.create("VRTHRESHOLD1_RPMBINS", 1208, FieldType.INT8).setScale(50.0).setBaseOffset(0); + public static final Field VRTHRESHOLD1_VALUES = Field.create("VRTHRESHOLD1_VALUES", 1214, FieldType.INT8).setScale(0.01).setBaseOffset(0); + public static final Field VRTHRESHOLD1_PIN = Field.create("VRTHRESHOLD1_PIN", 1220, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field VRTHRESHOLD1_ALIGNMENTFILL_AT_14 = Field.create("VRTHRESHOLD1_ALIGNMENTFILL_AT_14", 1222, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VRTHRESHOLD2_RPMBINS = Field.create("VRTHRESHOLD2_RPMBINS", 1224, FieldType.INT8).setScale(50.0).setBaseOffset(0); + public static final Field VRTHRESHOLD2_VALUES = Field.create("VRTHRESHOLD2_VALUES", 1230, FieldType.INT8).setScale(0.01).setBaseOffset(0); + public static final Field VRTHRESHOLD2_PIN = Field.create("VRTHRESHOLD2_PIN", 1236, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field VRTHRESHOLD2_ALIGNMENTFILL_AT_14 = Field.create("VRTHRESHOLD2_ALIGNMENTFILL_AT_14", 1238, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWMNOTE1 = Field.create("GPPWMNOTE1", 1240, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field GPPWMNOTE2 = Field.create("GPPWMNOTE2", 1256, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field GPPWMNOTE3 = Field.create("GPPWMNOTE3", 1272, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field GPPWMNOTE4 = Field.create("GPPWMNOTE4", 1288, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field TPS2SECONDARYMIN = Field.create("TPS2SECONDARYMIN", 1304, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TPS2SECONDARYMAX = Field.create("TPS2SECONDARYMAX", 1306, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field WIDEBANDONSECONDBUS = Field.create("WIDEBANDONSECONDBUS", 1308, FieldType.BIT, 0).setBaseOffset(0); + public static final Field FUELCLOSEDLOOPCORRECTIONENABLED = Field.create("FUELCLOSEDLOOPCORRECTIONENABLED", 1308, FieldType.BIT, 1).setBaseOffset(0); + public static final Field ODDFIREENGINE = Field.create("ODDFIREENGINE", 1308, FieldType.BIT, 2).setBaseOffset(0); + public static final Field BOARDUSETACHPULLUP = Field.create("BOARDUSETACHPULLUP", 1308, FieldType.BIT, 3).setBaseOffset(0); + public static final Field BOARDUSETEMPPULLUP = Field.create("BOARDUSETEMPPULLUP", 1308, FieldType.BIT, 4).setBaseOffset(0); + public static final Field YESUNDERSTANDLOCKING = Field.create("YESUNDERSTANDLOCKING", 1308, FieldType.BIT, 5).setBaseOffset(0); + public static final Field SILENTTRIGGERERROR = Field.create("SILENTTRIGGERERROR", 1308, FieldType.BIT, 6).setBaseOffset(0); + public static final Field USELINEARCLTSENSOR = Field.create("USELINEARCLTSENSOR", 1308, FieldType.BIT, 7).setBaseOffset(0); + public static final Field CANREADENABLED = Field.create("CANREADENABLED", 1308, FieldType.BIT, 8).setBaseOffset(0); + public static final Field CANWRITEENABLED = Field.create("CANWRITEENABLED", 1308, FieldType.BIT, 9).setBaseOffset(0); + public static final Field USELINEARIATSENSOR = Field.create("USELINEARIATSENSOR", 1308, FieldType.BIT, 10).setBaseOffset(0); + public static final Field BOARDUSE2STEPPULLDOWN = Field.create("BOARDUSE2STEPPULLDOWN", 1308, FieldType.BIT, 11).setBaseOffset(0); + public static final Field TACHPULSEDURATIONASDUTYCYCLE = Field.create("TACHPULSEDURATIONASDUTYCYCLE", 1308, FieldType.BIT, 12).setBaseOffset(0); + public static final Field ISALTERNATORCONTROLENABLED = Field.create("ISALTERNATORCONTROLENABLED", 1308, FieldType.BIT, 13).setBaseOffset(0); + public static final Field INVERTPRIMARYTRIGGERSIGNAL = Field.create("INVERTPRIMARYTRIGGERSIGNAL", 1308, FieldType.BIT, 14).setBaseOffset(0); + public static final Field INVERTSECONDARYTRIGGERSIGNAL = Field.create("INVERTSECONDARYTRIGGERSIGNAL", 1308, FieldType.BIT, 15).setBaseOffset(0); + public static final Field CUTFUELONHARDLIMIT = Field.create("CUTFUELONHARDLIMIT", 1308, FieldType.BIT, 16).setBaseOffset(0); + public static final Field CUTSPARKONHARDLIMIT = Field.create("CUTSPARKONHARDLIMIT", 1308, FieldType.BIT, 17).setBaseOffset(0); + public static final Field LAUNCHFUELCUTENABLE = Field.create("LAUNCHFUELCUTENABLE", 1308, FieldType.BIT, 18).setBaseOffset(0); + public static final Field LAUNCHSPARKCUTENABLE = Field.create("LAUNCHSPARKCUTENABLE", 1308, FieldType.BIT, 19).setBaseOffset(0); + public static final Field BOARDUSECRANKPULLUP = Field.create("BOARDUSECRANKPULLUP", 1308, FieldType.BIT, 20).setBaseOffset(0); + public static final Field BOARDUSECAMPULLDOWN = Field.create("BOARDUSECAMPULLDOWN", 1308, FieldType.BIT, 21).setBaseOffset(0); + public static final Field BOARDUSECAMVRPULLUP = Field.create("BOARDUSECAMVRPULLUP", 1308, FieldType.BIT, 22).setBaseOffset(0); + public static final Field BOARDUSED2PULLDOWN = Field.create("BOARDUSED2PULLDOWN", 1308, FieldType.BIT, 23).setBaseOffset(0); + public static final Field BOARDUSED3PULLDOWN = Field.create("BOARDUSED3PULLDOWN", 1308, FieldType.BIT, 24).setBaseOffset(0); + public static final Field BOARDUSED4PULLDOWN = Field.create("BOARDUSED4PULLDOWN", 1308, FieldType.BIT, 25).setBaseOffset(0); + public static final Field BOARDUSED5PULLDOWN = Field.create("BOARDUSED5PULLDOWN", 1308, FieldType.BIT, 26).setBaseOffset(0); + public static final Field VERBOSEISOTP = Field.create("VERBOSEISOTP", 1308, FieldType.BIT, 27).setBaseOffset(0); + public static final Field ENGINESNIFFERFOCUSONINPUTS = Field.create("ENGINESNIFFERFOCUSONINPUTS", 1308, FieldType.BIT, 28).setBaseOffset(0); + public static final Field LAUNCHACTIVATEINVERTED = Field.create("LAUNCHACTIVATEINVERTED", 1308, FieldType.BIT, 29).setBaseOffset(0); + public static final Field TWOSTROKE = Field.create("TWOSTROKE", 1308, FieldType.BIT, 30).setBaseOffset(0); + public static final Field SKIPPEDWHEELONCAM = Field.create("SKIPPEDWHEELONCAM", 1308, FieldType.BIT, 31).setBaseOffset(0); + public static final Field HIPOUTPUTCHANNEL = Field.create("HIPOUTPUTCHANNEL", 1312, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_1313 = Field.create("ALIGNMENTFILL_AT_1313", 1313, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ACSWITCH = Field.create("ACSWITCH", 1314, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field VREFADCCHANNEL = Field.create("VREFADCCHANNEL", 1316, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field ETBNEUTRALPOSITION = Field.create("ETBNEUTRALPOSITION", 1317, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IDLEMODE = Field.create("IDLEMODE", 1318, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_1319 = Field.create("ALIGNMENTFILL_AT_1319", 1319, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ISINJECTIONENABLED = Field.create("ISINJECTIONENABLED", 1320, FieldType.BIT, 0).setBaseOffset(0); + public static final Field ISIGNITIONENABLED = Field.create("ISIGNITIONENABLED", 1320, FieldType.BIT, 1).setBaseOffset(0); + public static final Field ISCYLINDERCLEANUPENABLED = Field.create("ISCYLINDERCLEANUPENABLED", 1320, FieldType.BIT, 2).setBaseOffset(0); + public static final Field COMPLEXWALLMODEL = Field.create("COMPLEXWALLMODEL", 1320, FieldType.BIT, 3).setBaseOffset(0); + public static final Field ALWAYSINSTANTRPM = Field.create("ALWAYSINSTANTRPM", 1320, FieldType.BIT, 4).setBaseOffset(0); + public static final Field ISMAPAVERAGINGENABLED = Field.create("ISMAPAVERAGINGENABLED", 1320, FieldType.BIT, 5).setBaseOffset(0); + public static final Field OVERRIDECRANKINGIACSETTING = Field.create("OVERRIDECRANKINGIACSETTING", 1320, FieldType.BIT, 6).setBaseOffset(0); + public static final Field USESEPARATEADVANCEFORIDLE = Field.create("USESEPARATEADVANCEFORIDLE", 1320, FieldType.BIT, 7).setBaseOffset(0); + public static final Field ISWAVEANALYZERENABLED = Field.create("ISWAVEANALYZERENABLED", 1320, FieldType.BIT, 8).setBaseOffset(0); + public static final Field USESEPARATEVEFORIDLE = Field.create("USESEPARATEVEFORIDLE", 1320, FieldType.BIT, 9).setBaseOffset(0); + public static final Field VERBOSETRIGGERSYNCHDETAILS = Field.create("VERBOSETRIGGERSYNCHDETAILS", 1320, FieldType.BIT, 10).setBaseOffset(0); + public static final Field ISMANUALSPINNINGMODE = Field.create("ISMANUALSPINNINGMODE", 1320, FieldType.BIT, 11).setBaseOffset(0); + public static final Field CUTFUELINACR = Field.create("CUTFUELINACR", 1320, FieldType.BIT, 12).setBaseOffset(0); + public static final Field HONDAK = Field.create("HONDAK", 1320, FieldType.BIT, 13).setBaseOffset(0); + public static final Field TWOWIREBATCHIGNITION = Field.create("TWOWIREBATCHIGNITION", 1320, FieldType.BIT, 14).setBaseOffset(0); + public static final Field USEFIXEDBAROCORRFROMMAP = Field.create("USEFIXEDBAROCORRFROMMAP", 1320, FieldType.BIT, 15).setBaseOffset(0); + public static final Field USESEPARATEADVANCEFORCRANKING = Field.create("USESEPARATEADVANCEFORCRANKING", 1320, FieldType.BIT, 16).setBaseOffset(0); + public static final Field USEADVANCECORRECTIONSFORCRANKING = Field.create("USEADVANCECORRECTIONSFORCRANKING", 1320, FieldType.BIT, 17).setBaseOffset(0); + public static final Field FLEXCRANKING = Field.create("FLEXCRANKING", 1320, FieldType.BIT, 18).setBaseOffset(0); + public static final Field USEIACPIDMULTTABLE = Field.create("USEIACPIDMULTTABLE", 1320, FieldType.BIT, 19).setBaseOffset(0); + public static final Field ISBOOSTCONTROLENABLED = Field.create("ISBOOSTCONTROLENABLED", 1320, FieldType.BIT, 20).setBaseOffset(0); + public static final Field LAUNCHSMOOTHRETARD = Field.create("LAUNCHSMOOTHRETARD", 1320, FieldType.BIT, 21).setBaseOffset(0); + public static final Field ISPHASESYNCREQUIREDFORIGNITION = Field.create("ISPHASESYNCREQUIREDFORIGNITION", 1320, FieldType.BIT, 22).setBaseOffset(0); + public static final Field USECLTBASEDRPMLIMIT = Field.create("USECLTBASEDRPMLIMIT", 1320, FieldType.BIT, 23).setBaseOffset(0); + public static final Field FORCEO2HEATING = Field.create("FORCEO2HEATING", 1320, FieldType.BIT, 24).setBaseOffset(0); + public static final Field INVERTVVTCONTROLINTAKE = Field.create("INVERTVVTCONTROLINTAKE", 1320, FieldType.BIT, 25).setBaseOffset(0); + public static final Field INVERTVVTCONTROLEXHAUST = Field.create("INVERTVVTCONTROLEXHAUST", 1320, FieldType.BIT, 26).setBaseOffset(0); + public static final Field USEBIQUADONAUXSPEEDSENSORS = Field.create("USEBIQUADONAUXSPEEDSENSORS", 1320, FieldType.BIT, 27).setBaseOffset(0); + public static final Field SDTRIGGERLOG = Field.create("SDTRIGGERLOG", 1320, FieldType.BIT, 28).setBaseOffset(0); + public static final Field ALSACTIVATEINVERTED = Field.create("ALSACTIVATEINVERTED", 1320, FieldType.BIT, 29).setBaseOffset(0); + public static final Field STEPPER_DC_USE_TWO_WIRES = Field.create("STEPPER_DC_USE_TWO_WIRES", 1320, FieldType.BIT, 30).setBaseOffset(0); + public static final Field WATCHOUTFORLINEARTIME = Field.create("WATCHOUTFORLINEARTIME", 1320, FieldType.BIT, 31).setBaseOffset(0); + public static final Field ENGINECHARTSIZE = Field.create("ENGINECHARTSIZE", 1324, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field TURBOSPEEDSENSORMULTIPLIER = Field.create("TURBOSPEEDSENSORMULTIPLIER", 1328, FieldType.FLOAT).setBaseOffset(0); + public static final Field CAMINPUTSDEBUG1 = Field.create("CAMINPUTSDEBUG1", 1332, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field CAMINPUTSDEBUG2 = Field.create("CAMINPUTSDEBUG2", 1334, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field CAMINPUTSDEBUG3 = Field.create("CAMINPUTSDEBUG3", 1336, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field CAMINPUTSDEBUG4 = Field.create("CAMINPUTSDEBUG4", 1338, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ACIDLERPMTARGET = Field.create("ACIDLERPMTARGET", 1340, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field WARNINGPERIOD = Field.create("WARNINGPERIOD", 1342, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field KNOCKDETECTIONWINDOWSTART = Field.create("KNOCKDETECTIONWINDOWSTART", 1344, FieldType.FLOAT).setBaseOffset(0); + public static final Field KNOCKDETECTIONWINDOWEND = Field.create("KNOCKDETECTIONWINDOWEND", 1348, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLESTEPPERREACTIONTIME = Field.create("IDLESTEPPERREACTIONTIME", 1352, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLESTEPPERTOTALSTEPS = Field.create("IDLESTEPPERTOTALSTEPS", 1356, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field NOACCELAFTERHARDLIMITPERIODSECS = Field.create("NOACCELAFTERHARDLIMITPERIODSECS", 1360, FieldType.FLOAT).setBaseOffset(0); + public static final Field MAPAVERAGINGSCHEDULINGATINDEX = Field.create("MAPAVERAGINGSCHEDULINGATINDEX", 1364, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field TACHPULSEDURACTIONMS = Field.create("TACHPULSEDURACTIONMS", 1368, FieldType.FLOAT).setBaseOffset(0); + public static final Field WWAETAU = Field.create("WWAETAU", 1372, FieldType.FLOAT).setBaseOffset(0); + public static final Field ALTERNATORCONTROL_PFACTOR = Field.create("ALTERNATORCONTROL_PFACTOR", 1376, FieldType.FLOAT).setBaseOffset(0); + public static final Field ALTERNATORCONTROL_IFACTOR = Field.create("ALTERNATORCONTROL_IFACTOR", 1380, FieldType.FLOAT).setBaseOffset(0); + public static final Field ALTERNATORCONTROL_DFACTOR = Field.create("ALTERNATORCONTROL_DFACTOR", 1384, FieldType.FLOAT).setBaseOffset(0); + public static final Field ALTERNATORCONTROL_OFFSET = Field.create("ALTERNATORCONTROL_OFFSET", 1388, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALTERNATORCONTROL_PERIODMS = Field.create("ALTERNATORCONTROL_PERIODMS", 1390, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALTERNATORCONTROL_MINVALUE = Field.create("ALTERNATORCONTROL_MINVALUE", 1392, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALTERNATORCONTROL_MAXVALUE = Field.create("ALTERNATORCONTROL_MAXVALUE", 1394, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETB_PFACTOR = Field.create("ETB_PFACTOR", 1396, FieldType.FLOAT).setBaseOffset(0); + public static final Field ETB_IFACTOR = Field.create("ETB_IFACTOR", 1400, FieldType.FLOAT).setBaseOffset(0); + public static final Field ETB_DFACTOR = Field.create("ETB_DFACTOR", 1404, FieldType.FLOAT).setBaseOffset(0); + public static final Field ETB_OFFSET = Field.create("ETB_OFFSET", 1408, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETB_PERIODMS = Field.create("ETB_PERIODMS", 1410, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETB_MINVALUE = Field.create("ETB_MINVALUE", 1412, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETB_MAXVALUE = Field.create("ETB_MAXVALUE", 1414, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGERINPUTDEBUGPINS1 = Field.create("TRIGGERINPUTDEBUGPINS1", 1416, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGERINPUTDEBUGPINS2 = Field.create("TRIGGERINPUTDEBUGPINS2", 1418, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field AIRTAPERRPMRANGE = Field.create("AIRTAPERRPMRANGE", 1420, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TURBOSPEEDSENSORINPUTPIN = Field.create("TURBOSPEEDSENSORINPUTPIN", 1422, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TPS2MIN = Field.create("TPS2MIN", 1424, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TPS2MAX = Field.create("TPS2MAX", 1426, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field STARTERCONTROLPIN = Field.create("STARTERCONTROLPIN", 1428, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field STARTSTOPBUTTONMODE = Field.create("STARTSTOPBUTTONMODE", 1430, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_1431 = Field.create("ALIGNMENTFILL_AT_1431", 1431, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MC33816_FLAG0 = Field.create("MC33816_FLAG0", 1432, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field TACHPULSEPERREV = Field.create("TACHPULSEPERREV", 1434, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_1435 = Field.create("ALIGNMENTFILL_AT_1435", 1435, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MAPERRORDETECTIONTOOLOW = Field.create("MAPERRORDETECTIONTOOLOW", 1436, FieldType.FLOAT).setBaseOffset(0); + public static final Field MAPERRORDETECTIONTOOHIGH = Field.create("MAPERRORDETECTIONTOOHIGH", 1440, FieldType.FLOAT).setBaseOffset(0); + public static final Field MULTISPARKSPARKDURATION = Field.create("MULTISPARKSPARKDURATION", 1444, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field MULTISPARKDWELL = Field.create("MULTISPARKDWELL", 1446, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field IDLERPMPID_PFACTOR = Field.create("IDLERPMPID_PFACTOR", 1448, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLERPMPID_IFACTOR = Field.create("IDLERPMPID_IFACTOR", 1452, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLERPMPID_DFACTOR = Field.create("IDLERPMPID_DFACTOR", 1456, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLERPMPID_OFFSET = Field.create("IDLERPMPID_OFFSET", 1460, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLERPMPID_PERIODMS = Field.create("IDLERPMPID_PERIODMS", 1462, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLERPMPID_MINVALUE = Field.create("IDLERPMPID_MINVALUE", 1464, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLERPMPID_MAXVALUE = Field.create("IDLERPMPID_MAXVALUE", 1466, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field WWAEBETA = Field.create("WWAEBETA", 1468, FieldType.FLOAT).setBaseOffset(0); + public static final Field BINARYSERIALTXPIN = Field.create("BINARYSERIALTXPIN", 1472, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field BINARYSERIALRXPIN = Field.create("BINARYSERIALRXPIN", 1474, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field AUXVALVES1 = Field.create("AUXVALVES1", 1476, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field AUXVALVES2 = Field.create("AUXVALVES2", 1478, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field TCUUPSHIFTBUTTONPIN = Field.create("TCUUPSHIFTBUTTONPIN", 1480, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCUDOWNSHIFTBUTTONPIN = Field.create("TCUDOWNSHIFTBUTTONPIN", 1482, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field THROTTLEPEDALUPVOLTAGE = Field.create("THROTTLEPEDALUPVOLTAGE", 1484, FieldType.FLOAT).setBaseOffset(0); + public static final Field THROTTLEPEDALWOTVOLTAGE = Field.create("THROTTLEPEDALWOTVOLTAGE", 1488, FieldType.FLOAT).setBaseOffset(0); + public static final Field STARTUPFUELPUMPDURATION = Field.create("STARTUPFUELPUMPDURATION", 1492, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLEPIDRPMDEADZONE = Field.create("IDLEPIDRPMDEADZONE", 1494, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TARGETVBATT = Field.create("TARGETVBATT", 1496, FieldType.FLOAT).setBaseOffset(0); + public static final Field MC33810DISABLERECOVERYMODE = Field.create("MC33810DISABLERECOVERYMODE", 1500, FieldType.BIT, 0).setBaseOffset(0); + public static final Field MC33810GPGD0MODE = Field.create("MC33810GPGD0MODE", 1500, FieldType.BIT, 1).setBaseOffset(0); + public static final Field MC33810GPGD1MODE = Field.create("MC33810GPGD1MODE", 1500, FieldType.BIT, 2).setBaseOffset(0); + public static final Field MC33810GPGD2MODE = Field.create("MC33810GPGD2MODE", 1500, FieldType.BIT, 3).setBaseOffset(0); + public static final Field MC33810GPGD3MODE = Field.create("MC33810GPGD3MODE", 1500, FieldType.BIT, 4).setBaseOffset(0); + public static final Field ENABLEEXTENDEDCANBROADCAST = Field.create("ENABLEEXTENDEDCANBROADCAST", 1500, FieldType.BIT, 5).setBaseOffset(0); + public static final Field LUACANRXWORKAROUND = Field.create("LUACANRXWORKAROUND", 1500, FieldType.BIT, 6).setBaseOffset(0); + public static final Field FLEXSENSORINVERTED = Field.create("FLEXSENSORINVERTED", 1500, FieldType.BIT, 7).setBaseOffset(0); + public static final Field USEHARDSKIPINTRACTION = Field.create("USEHARDSKIPINTRACTION", 1500, FieldType.BIT, 8).setBaseOffset(0); + public static final Field FANCYSMARTS = Field.create("FANCYSMARTS", 1500, FieldType.BIT, 9).setBaseOffset(0); + public static final Field FANCYSMARTL = Field.create("FANCYSMARTL", 1500, FieldType.BIT, 10).setBaseOffset(0); + public static final Field USEAUXSPEEDFORSLIPRATIO = Field.create("USEAUXSPEEDFORSLIPRATIO", 1500, FieldType.BIT, 11).setBaseOffset(0); + public static final Field USEVSSASSECONDWHEELSPEED = Field.create("USEVSSASSECONDWHEELSPEED", 1500, FieldType.BIT, 12).setBaseOffset(0); + public static final Field IS_ENABLED_SPI_5 = Field.create("IS_ENABLED_SPI_5", 1500, FieldType.BIT, 13).setBaseOffset(0); + public static final Field IS_ENABLED_SPI_6 = Field.create("IS_ENABLED_SPI_6", 1500, FieldType.BIT, 14).setBaseOffset(0); + public static final Field ENABLEAEMXSERIESEGT = Field.create("ENABLEAEMXSERIESEGT", 1500, FieldType.BIT, 15).setBaseOffset(0); + public static final Field AFTERCRANKINGIACTAPERDURATION = Field.create("AFTERCRANKINGIACTAPERDURATION", 1504, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IACBYTPSTAPER = Field.create("IACBYTPSTAPER", 1506, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field AUXSERIALTXPIN = Field.create("AUXSERIALTXPIN", 1508, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field AUXSERIALRXPIN = Field.create("AUXSERIALRXPIN", 1510, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ACCELEROMETERCSPIN = Field.create("ACCELEROMETERCSPIN", 1512, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field TPSACCELLOOKBACK = Field.create("TPSACCELLOOKBACK", 1514, FieldType.INT8).setScale(0.05).setBaseOffset(0); + public static final Field COASTINGFUELCUTVSSLOW = Field.create("COASTINGFUELCUTVSSLOW", 1515, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field COASTINGFUELCUTVSSHIGH = Field.create("COASTINGFUELCUTVSSHIGH", 1516, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field NOFUELTRIMAFTERDFCOTIME = Field.create("NOFUELTRIMAFTERDFCOTIME", 1517, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_1518 = Field.create("ALIGNMENTFILL_AT_1518", 1518, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TPSACCELENRICHMENTTHRESHOLD = Field.create("TPSACCELENRICHMENTTHRESHOLD", 1520, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXSPEEDSENSORINPUTPIN1 = Field.create("AUXSPEEDSENSORINPUTPIN1", 1524, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXSPEEDSENSORINPUTPIN2 = Field.create("AUXSPEEDSENSORINPUTPIN2", 1526, FieldType.INT16, brain_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TOTALGEARSCOUNT = Field.create("TOTALGEARSCOUNT", 1528, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONTIMINGMODE = Field.create("INJECTIONTIMINGMODE", 1529, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final String[] debug_mode_e = {"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"}; - public static final Field DEBUGMODE = Field.create("DEBUGMODE", 1606, FieldType.INT8, debug_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field FAN1EXTRAIDLE = Field.create("FAN1EXTRAIDLE", 1607, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field UARTCONSOLESERIALSPEED = Field.create("UARTCONSOLESERIALSPEED", 1608, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field TPSDECELENLEANMENTTHRESHOLD = Field.create("TPSDECELENLEANMENTTHRESHOLD", 1612, FieldType.FLOAT).setBaseOffset(0); - public static final Field TPSDECELENLEANMENTMULTIPLIER = Field.create("TPSDECELENLEANMENTMULTIPLIER", 1616, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXSERIALSPEED = Field.create("AUXSERIALSPEED", 1620, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field THROTTLEPEDALSECONDARYUPVOLTAGE = Field.create("THROTTLEPEDALSECONDARYUPVOLTAGE", 1624, FieldType.FLOAT).setBaseOffset(0); - public static final Field THROTTLEPEDALSECONDARYWOTVOLTAGE = Field.create("THROTTLEPEDALSECONDARYWOTVOLTAGE", 1628, FieldType.FLOAT).setBaseOffset(0); + public static final Field DEBUGMODE = Field.create("DEBUGMODE", 1530, FieldType.INT8, debug_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field FAN1EXTRAIDLE = Field.create("FAN1EXTRAIDLE", 1531, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field UARTCONSOLESERIALSPEED = Field.create("UARTCONSOLESERIALSPEED", 1532, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field TPSDECELENLEANMENTTHRESHOLD = Field.create("TPSDECELENLEANMENTTHRESHOLD", 1536, FieldType.FLOAT).setBaseOffset(0); + public static final Field TPSDECELENLEANMENTMULTIPLIER = Field.create("TPSDECELENLEANMENTMULTIPLIER", 1540, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXSERIALSPEED = Field.create("AUXSERIALSPEED", 1544, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field THROTTLEPEDALSECONDARYUPVOLTAGE = Field.create("THROTTLEPEDALSECONDARYUPVOLTAGE", 1548, FieldType.FLOAT).setBaseOffset(0); + public static final Field THROTTLEPEDALSECONDARYWOTVOLTAGE = Field.create("THROTTLEPEDALSECONDARYWOTVOLTAGE", 1552, FieldType.FLOAT).setBaseOffset(0); public static final String[] can_baudrate_e = {"50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps"}; - public static final Field CANBAUDRATE = Field.create("CANBAUDRATE", 1632, FieldType.INT8, can_baudrate_e).setScale(1.0).setBaseOffset(0); - public static final Field VEOVERRIDEMODE = Field.create("VEOVERRIDEMODE", 1633, FieldType.INT8, ve_override_e).setScale(1.0).setBaseOffset(0); - public static final Field CAN2BAUDRATE = Field.create("CAN2BAUDRATE", 1634, FieldType.INT8, can_baudrate_e).setScale(1.0).setBaseOffset(0); + public static final Field CANBAUDRATE = Field.create("CANBAUDRATE", 1556, FieldType.INT8, can_baudrate_e).setScale(1.0).setBaseOffset(0); + public static final Field VEOVERRIDEMODE = Field.create("VEOVERRIDEMODE", 1557, FieldType.INT8, ve_override_e).setScale(1.0).setBaseOffset(0); + public static final Field CAN2BAUDRATE = Field.create("CAN2BAUDRATE", 1558, FieldType.INT8, can_baudrate_e).setScale(1.0).setBaseOffset(0); public static final String[] load_override_e = {"None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %"}; - public static final Field AFROVERRIDEMODE = Field.create("AFROVERRIDEMODE", 1635, FieldType.INT8, load_override_e).setScale(1.0).setBaseOffset(0); - public static final Field MC33_HPFP_I_PEAK = Field.create("MC33_HPFP_I_PEAK", 1636, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field MC33_HPFP_I_HOLD = Field.create("MC33_HPFP_I_HOLD", 1637, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field MC33_HPFP_I_HOLD_OFF = Field.create("MC33_HPFP_I_HOLD_OFF", 1638, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MC33_HPFP_MAX_HOLD = Field.create("MC33_HPFP_MAX_HOLD", 1639, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERDCINVERTEDPINS = Field.create("STEPPERDCINVERTEDPINS", 1640, FieldType.BIT, 0).setBaseOffset(0); - public static final Field CANOPENBLT = Field.create("CANOPENBLT", 1640, FieldType.BIT, 1).setBaseOffset(0); - public static final Field CAN2OPENBLT = Field.create("CAN2OPENBLT", 1640, FieldType.BIT, 2).setBaseOffset(0); - public static final Field INJECTORFLOWASMASSFLOW = Field.create("INJECTORFLOWASMASSFLOW", 1640, FieldType.BIT, 3).setBaseOffset(0); - public static final Field BOARDUSECANTERMINATOR = Field.create("BOARDUSECANTERMINATOR", 1640, FieldType.BIT, 4).setBaseOffset(0); - public static final Field KLINEDOHONDASEND = Field.create("KLINEDOHONDASEND", 1640, FieldType.BIT, 5).setBaseOffset(0); - public static final Field CAN1LISTENMODE = Field.create("CAN1LISTENMODE", 1640, FieldType.BIT, 6).setBaseOffset(0); - public static final Field CAN2LISTENMODE = Field.create("CAN2LISTENMODE", 1640, FieldType.BIT, 7).setBaseOffset(0); - public static final Field CAMDECODER2JZPOSITION = Field.create("CAMDECODER2JZPOSITION", 1644, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MC33810MAXDWELLTIMER = Field.create("MC33810MAXDWELLTIMER", 1645, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field BENCHTESTONTIME = Field.create("BENCHTESTONTIME", 1646, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field LAMBDAPROTECTIONRESTORETPS = Field.create("LAMBDAPROTECTIONRESTORETPS", 1648, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field LAMBDAPROTECTIONRESTORELOAD = Field.create("LAMBDAPROTECTIONRESTORELOAD", 1649, FieldType.INT8).setScale(10.0).setBaseOffset(0); - public static final Field LAUNCHACTIVATEPINMODE = Field.create("LAUNCHACTIVATEPINMODE", 1650, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1651 = Field.create("ALIGNMENTFILL_AT_1651", 1651, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CAN2TXPIN = Field.create("CAN2TXPIN", 1652, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field CAN2RXPIN = Field.create("CAN2RXPIN", 1654, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field STARTERCONTROLPINMODE = Field.create("STARTERCONTROLPINMODE", 1656, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field WASTEGATEPOSITIONSENSOR = Field.create("WASTEGATEPOSITIONSENSOR", 1657, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNOVERRIDEMODE = Field.create("IGNOVERRIDEMODE", 1658, FieldType.INT8, load_override_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTORPRESSURETYPE = Field.create("INJECTORPRESSURETYPE", 1659, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HPFPVALVEPIN = Field.create("HPFPVALVEPIN", 1660, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field HPFPVALVEPINMODE = Field.create("HPFPVALVEPINMODE", 1662, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1663 = Field.create("ALIGNMENTFILL_AT_1663", 1663, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCUTPRESSURE = Field.create("BOOSTCUTPRESSURE", 1664, FieldType.FLOAT).setBaseOffset(0); - public static final Field TCHARGEBINS = Field.create("TCHARGEBINS", 1668, FieldType.INT8).setScale(5.0).setBaseOffset(0); - public static final Field TCHARGEVALUES = Field.create("TCHARGEVALUES", 1684, FieldType.INT8).setScale(0.01).setBaseOffset(0); - public static final Field FIXEDTIMING = Field.create("FIXEDTIMING", 1700, FieldType.FLOAT).setBaseOffset(0); - public static final Field MAPLOWVALUEVOLTAGE = Field.create("MAPLOWVALUEVOLTAGE", 1704, FieldType.FLOAT).setBaseOffset(0); - public static final Field MAPHIGHVALUEVOLTAGE = Field.create("MAPHIGHVALUEVOLTAGE", 1708, FieldType.FLOAT).setBaseOffset(0); - public static final Field EGOVALUESHIFT = Field.create("EGOVALUESHIFT", 1712, FieldType.FLOAT).setBaseOffset(0); - public static final Field VVTPINS1 = Field.create("VVTPINS1", 1716, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field VVTPINS2 = Field.create("VVTPINS2", 1718, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field VVTPINS3 = Field.create("VVTPINS3", 1720, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field VVTPINS4 = Field.create("VVTPINS4", 1722, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field SDCARDCSPINMODE = Field.create("SDCARDCSPINMODE", 1724, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_1725 = Field.create("ALIGNMENTFILL_AT_1725", 1725, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CRANKINGIACPOSITION = Field.create("CRANKINGIACPOSITION", 1728, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field TCHARGEMINRPMMINTPS = Field.create("TCHARGEMINRPMMINTPS", 1732, FieldType.FLOAT).setBaseOffset(0); - public static final Field TCHARGEMINRPMMAXTPS = Field.create("TCHARGEMINRPMMAXTPS", 1736, FieldType.FLOAT).setBaseOffset(0); - public static final Field TCHARGEMAXRPMMINTPS = Field.create("TCHARGEMAXRPMMINTPS", 1740, FieldType.FLOAT).setBaseOffset(0); - public static final Field TCHARGEMAXRPMMAXTPS = Field.create("TCHARGEMAXRPMMAXTPS", 1744, FieldType.FLOAT).setBaseOffset(0); - public static final Field VVTOUTPUTFREQUENCY = Field.create("VVTOUTPUTFREQUENCY", 1748, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field MINIMUMIGNITIONTIMING = Field.create("MINIMUMIGNITIONTIMING", 1750, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MAXIMUMIGNITIONTIMING = Field.create("MAXIMUMIGNITIONTIMING", 1751, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALTERNATORPWMFREQUENCY = Field.create("ALTERNATORPWMFREQUENCY", 1752, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field AFROVERRIDEMODE = Field.create("AFROVERRIDEMODE", 1559, FieldType.INT8, load_override_e).setScale(1.0).setBaseOffset(0); + public static final Field MC33_HPFP_I_PEAK = Field.create("MC33_HPFP_I_PEAK", 1560, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field MC33_HPFP_I_HOLD = Field.create("MC33_HPFP_I_HOLD", 1561, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field MC33_HPFP_I_HOLD_OFF = Field.create("MC33_HPFP_I_HOLD_OFF", 1562, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MC33_HPFP_MAX_HOLD = Field.create("MC33_HPFP_MAX_HOLD", 1563, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERDCINVERTEDPINS = Field.create("STEPPERDCINVERTEDPINS", 1564, FieldType.BIT, 0).setBaseOffset(0); + public static final Field CANOPENBLT = Field.create("CANOPENBLT", 1564, FieldType.BIT, 1).setBaseOffset(0); + public static final Field CAN2OPENBLT = Field.create("CAN2OPENBLT", 1564, FieldType.BIT, 2).setBaseOffset(0); + public static final Field INJECTORFLOWASMASSFLOW = Field.create("INJECTORFLOWASMASSFLOW", 1564, FieldType.BIT, 3).setBaseOffset(0); + public static final Field BOARDUSECANTERMINATOR = Field.create("BOARDUSECANTERMINATOR", 1564, FieldType.BIT, 4).setBaseOffset(0); + public static final Field KLINEDOHONDASEND = Field.create("KLINEDOHONDASEND", 1564, FieldType.BIT, 5).setBaseOffset(0); + public static final Field CAN1LISTENMODE = Field.create("CAN1LISTENMODE", 1564, FieldType.BIT, 6).setBaseOffset(0); + public static final Field CAN2LISTENMODE = Field.create("CAN2LISTENMODE", 1564, FieldType.BIT, 7).setBaseOffset(0); + public static final Field CAMDECODER2JZPOSITION = Field.create("CAMDECODER2JZPOSITION", 1568, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MC33810MAXDWELLTIMER = Field.create("MC33810MAXDWELLTIMER", 1569, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field BENCHTESTONTIME = Field.create("BENCHTESTONTIME", 1570, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field LAMBDAPROTECTIONRESTORETPS = Field.create("LAMBDAPROTECTIONRESTORETPS", 1572, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field LAMBDAPROTECTIONRESTORELOAD = Field.create("LAMBDAPROTECTIONRESTORELOAD", 1573, FieldType.INT8).setScale(10.0).setBaseOffset(0); + public static final Field LAUNCHACTIVATEPINMODE = Field.create("LAUNCHACTIVATEPINMODE", 1574, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_1575 = Field.create("ALIGNMENTFILL_AT_1575", 1575, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CAN2TXPIN = Field.create("CAN2TXPIN", 1576, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field CAN2RXPIN = Field.create("CAN2RXPIN", 1578, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field STARTERCONTROLPINMODE = Field.create("STARTERCONTROLPINMODE", 1580, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field WASTEGATEPOSITIONSENSOR = Field.create("WASTEGATEPOSITIONSENSOR", 1581, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNOVERRIDEMODE = Field.create("IGNOVERRIDEMODE", 1582, FieldType.INT8, load_override_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTORPRESSURETYPE = Field.create("INJECTORPRESSURETYPE", 1583, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HPFPVALVEPIN = Field.create("HPFPVALVEPIN", 1584, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field HPFPVALVEPINMODE = Field.create("HPFPVALVEPINMODE", 1586, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_1587 = Field.create("ALIGNMENTFILL_AT_1587", 1587, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCUTPRESSURE = Field.create("BOOSTCUTPRESSURE", 1588, FieldType.FLOAT).setBaseOffset(0); + public static final Field TCHARGEBINS = Field.create("TCHARGEBINS", 1592, FieldType.INT8).setScale(5.0).setBaseOffset(0); + public static final Field TCHARGEVALUES = Field.create("TCHARGEVALUES", 1608, FieldType.INT8).setScale(0.01).setBaseOffset(0); + public static final Field FIXEDTIMING = Field.create("FIXEDTIMING", 1624, FieldType.FLOAT).setBaseOffset(0); + public static final Field MAPLOWVALUEVOLTAGE = Field.create("MAPLOWVALUEVOLTAGE", 1628, FieldType.FLOAT).setBaseOffset(0); + public static final Field MAPHIGHVALUEVOLTAGE = Field.create("MAPHIGHVALUEVOLTAGE", 1632, FieldType.FLOAT).setBaseOffset(0); + public static final Field EGOVALUESHIFT = Field.create("EGOVALUESHIFT", 1636, FieldType.FLOAT).setBaseOffset(0); + public static final Field VVTPINS1 = Field.create("VVTPINS1", 1640, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field VVTPINS2 = Field.create("VVTPINS2", 1642, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field VVTPINS3 = Field.create("VVTPINS3", 1644, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field VVTPINS4 = Field.create("VVTPINS4", 1646, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field CRANKINGIACPOSITION = Field.create("CRANKINGIACPOSITION", 1648, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field TCHARGEMINRPMMINTPS = Field.create("TCHARGEMINRPMMINTPS", 1652, FieldType.FLOAT).setBaseOffset(0); + public static final Field TCHARGEMINRPMMAXTPS = Field.create("TCHARGEMINRPMMAXTPS", 1656, FieldType.FLOAT).setBaseOffset(0); + public static final Field TCHARGEMAXRPMMINTPS = Field.create("TCHARGEMAXRPMMINTPS", 1660, FieldType.FLOAT).setBaseOffset(0); + public static final Field TCHARGEMAXRPMMAXTPS = Field.create("TCHARGEMAXRPMMAXTPS", 1664, FieldType.FLOAT).setBaseOffset(0); + public static final Field VVTOUTPUTFREQUENCY = Field.create("VVTOUTPUTFREQUENCY", 1668, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field MINIMUMIGNITIONTIMING = Field.create("MINIMUMIGNITIONTIMING", 1670, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MAXIMUMIGNITIONTIMING = Field.create("MAXIMUMIGNITIONTIMING", 1671, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALTERNATORPWMFREQUENCY = Field.create("ALTERNATORPWMFREQUENCY", 1672, FieldType.INT).setScale(1.0).setBaseOffset(0); public static final String[] vvt_mode_e = {"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"}; - public static final Field VVTMODE1 = Field.create("VVTMODE1", 1756, FieldType.INT8, vvt_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field VVTMODE2 = Field.create("VVTMODE2", 1757, FieldType.INT8, vvt_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field FAN2EXTRAIDLE = Field.create("FAN2EXTRAIDLE", 1758, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field PRIMINGDELAY = Field.create("PRIMINGDELAY", 1759, FieldType.INT8).setScale(0.01).setBaseOffset(0); - public static final Field AUXANALOGINPUTS1 = Field.create("AUXANALOGINPUTS1", 1760, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXANALOGINPUTS2 = Field.create("AUXANALOGINPUTS2", 1761, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXANALOGINPUTS3 = Field.create("AUXANALOGINPUTS3", 1762, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXANALOGINPUTS4 = Field.create("AUXANALOGINPUTS4", 1763, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXANALOGINPUTS5 = Field.create("AUXANALOGINPUTS5", 1764, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXANALOGINPUTS6 = Field.create("AUXANALOGINPUTS6", 1765, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXANALOGINPUTS7 = Field.create("AUXANALOGINPUTS7", 1766, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXANALOGINPUTS8 = Field.create("AUXANALOGINPUTS8", 1767, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS1 = Field.create("TRAILINGCOILPINS1", 1768, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS2 = Field.create("TRAILINGCOILPINS2", 1770, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS3 = Field.create("TRAILINGCOILPINS3", 1772, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS4 = Field.create("TRAILINGCOILPINS4", 1774, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS5 = Field.create("TRAILINGCOILPINS5", 1776, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS6 = Field.create("TRAILINGCOILPINS6", 1778, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS7 = Field.create("TRAILINGCOILPINS7", 1780, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS8 = Field.create("TRAILINGCOILPINS8", 1782, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS9 = Field.create("TRAILINGCOILPINS9", 1784, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS10 = Field.create("TRAILINGCOILPINS10", 1786, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS11 = Field.create("TRAILINGCOILPINS11", 1788, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRAILINGCOILPINS12 = Field.create("TRAILINGCOILPINS12", 1790, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TLE8888MODE = Field.create("TLE8888MODE", 1792, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ACCELEROMETERCSPINMODE = Field.create("ACCELEROMETERCSPINMODE", 1793, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTORCOMPENSATIONMODE = Field.create("INJECTORCOMPENSATIONMODE", 1794, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FAN2PINMODE = Field.create("FAN2PINMODE", 1795, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field FUELREFERENCEPRESSURE = Field.create("FUELREFERENCEPRESSURE", 1796, FieldType.FLOAT).setBaseOffset(0); - public static final Field POSTCRANKINGFACTOR = Field.create("POSTCRANKINGFACTOR", 1800, FieldType.FLOAT).setBaseOffset(0); - public static final Field POSTCRANKINGDURATIONBINS = Field.create("POSTCRANKINGDURATIONBINS", 1944, FieldType.FLOAT).setBaseOffset(0); - public static final Field POSTCRANKINGCLTBINS = Field.create("POSTCRANKINGCLTBINS", 1968, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR1_TEMPC_1 = Field.create("AUXTEMPSENSOR1_TEMPC_1", 1992, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR1_TEMPC_2 = Field.create("AUXTEMPSENSOR1_TEMPC_2", 1996, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR1_TEMPC_3 = Field.create("AUXTEMPSENSOR1_TEMPC_3", 2000, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR1_RESISTANCE_1 = Field.create("AUXTEMPSENSOR1_RESISTANCE_1", 2004, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR1_RESISTANCE_2 = Field.create("AUXTEMPSENSOR1_RESISTANCE_2", 2008, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR1_RESISTANCE_3 = Field.create("AUXTEMPSENSOR1_RESISTANCE_3", 2012, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR1_BIAS_RESISTOR = Field.create("AUXTEMPSENSOR1_BIAS_RESISTOR", 2016, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR1_ADCCHANNEL = Field.create("AUXTEMPSENSOR1_ADCCHANNEL", 2020, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXTEMPSENSOR1_ALIGNMENTFILL_AT_29 = Field.create("AUXTEMPSENSOR1_ALIGNMENTFILL_AT_29", 2021, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field AUXTEMPSENSOR2_TEMPC_1 = Field.create("AUXTEMPSENSOR2_TEMPC_1", 2024, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR2_TEMPC_2 = Field.create("AUXTEMPSENSOR2_TEMPC_2", 2028, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR2_TEMPC_3 = Field.create("AUXTEMPSENSOR2_TEMPC_3", 2032, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR2_RESISTANCE_1 = Field.create("AUXTEMPSENSOR2_RESISTANCE_1", 2036, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR2_RESISTANCE_2 = Field.create("AUXTEMPSENSOR2_RESISTANCE_2", 2040, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR2_RESISTANCE_3 = Field.create("AUXTEMPSENSOR2_RESISTANCE_3", 2044, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR2_BIAS_RESISTOR = Field.create("AUXTEMPSENSOR2_BIAS_RESISTOR", 2048, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXTEMPSENSOR2_ADCCHANNEL = Field.create("AUXTEMPSENSOR2_ADCCHANNEL", 2052, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXTEMPSENSOR2_ALIGNMENTFILL_AT_29 = Field.create("AUXTEMPSENSOR2_ALIGNMENTFILL_AT_29", 2053, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field KNOCKSAMPLINGDURATION = Field.create("KNOCKSAMPLINGDURATION", 2056, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETBFREQ = Field.create("ETBFREQ", 2058, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETBWASTEGATEPID_PFACTOR = Field.create("ETBWASTEGATEPID_PFACTOR", 2060, FieldType.FLOAT).setBaseOffset(0); - public static final Field ETBWASTEGATEPID_IFACTOR = Field.create("ETBWASTEGATEPID_IFACTOR", 2064, FieldType.FLOAT).setBaseOffset(0); - public static final Field ETBWASTEGATEPID_DFACTOR = Field.create("ETBWASTEGATEPID_DFACTOR", 2068, FieldType.FLOAT).setBaseOffset(0); - public static final Field ETBWASTEGATEPID_OFFSET = Field.create("ETBWASTEGATEPID_OFFSET", 2072, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETBWASTEGATEPID_PERIODMS = Field.create("ETBWASTEGATEPID_PERIODMS", 2074, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETBWASTEGATEPID_MINVALUE = Field.create("ETBWASTEGATEPID_MINVALUE", 2076, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETBWASTEGATEPID_MAXVALUE = Field.create("ETBWASTEGATEPID_MAXVALUE", 2078, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VVTMODE1 = Field.create("VVTMODE1", 1676, FieldType.INT8, vvt_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field VVTMODE2 = Field.create("VVTMODE2", 1677, FieldType.INT8, vvt_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field FAN2EXTRAIDLE = Field.create("FAN2EXTRAIDLE", 1678, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field PRIMINGDELAY = Field.create("PRIMINGDELAY", 1679, FieldType.INT8).setScale(0.01).setBaseOffset(0); + public static final Field AUXANALOGINPUTS1 = Field.create("AUXANALOGINPUTS1", 1680, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXANALOGINPUTS2 = Field.create("AUXANALOGINPUTS2", 1681, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXANALOGINPUTS3 = Field.create("AUXANALOGINPUTS3", 1682, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXANALOGINPUTS4 = Field.create("AUXANALOGINPUTS4", 1683, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXANALOGINPUTS5 = Field.create("AUXANALOGINPUTS5", 1684, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXANALOGINPUTS6 = Field.create("AUXANALOGINPUTS6", 1685, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXANALOGINPUTS7 = Field.create("AUXANALOGINPUTS7", 1686, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXANALOGINPUTS8 = Field.create("AUXANALOGINPUTS8", 1687, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS1 = Field.create("TRAILINGCOILPINS1", 1688, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS2 = Field.create("TRAILINGCOILPINS2", 1690, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS3 = Field.create("TRAILINGCOILPINS3", 1692, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS4 = Field.create("TRAILINGCOILPINS4", 1694, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS5 = Field.create("TRAILINGCOILPINS5", 1696, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS6 = Field.create("TRAILINGCOILPINS6", 1698, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS7 = Field.create("TRAILINGCOILPINS7", 1700, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS8 = Field.create("TRAILINGCOILPINS8", 1702, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS9 = Field.create("TRAILINGCOILPINS9", 1704, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS10 = Field.create("TRAILINGCOILPINS10", 1706, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS11 = Field.create("TRAILINGCOILPINS11", 1708, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRAILINGCOILPINS12 = Field.create("TRAILINGCOILPINS12", 1710, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TLE8888MODE = Field.create("TLE8888MODE", 1712, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ACCELEROMETERCSPINMODE = Field.create("ACCELEROMETERCSPINMODE", 1713, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTORCOMPENSATIONMODE = Field.create("INJECTORCOMPENSATIONMODE", 1714, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FAN2PINMODE = Field.create("FAN2PINMODE", 1715, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field FUELREFERENCEPRESSURE = Field.create("FUELREFERENCEPRESSURE", 1716, FieldType.FLOAT).setBaseOffset(0); + public static final Field POSTCRANKINGFACTOR = Field.create("POSTCRANKINGFACTOR", 1720, FieldType.FLOAT).setBaseOffset(0); + public static final Field POSTCRANKINGDURATIONBINS = Field.create("POSTCRANKINGDURATIONBINS", 1864, FieldType.FLOAT).setBaseOffset(0); + public static final Field POSTCRANKINGCLTBINS = Field.create("POSTCRANKINGCLTBINS", 1888, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR1_TEMPC_1 = Field.create("AUXTEMPSENSOR1_TEMPC_1", 1912, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR1_TEMPC_2 = Field.create("AUXTEMPSENSOR1_TEMPC_2", 1916, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR1_TEMPC_3 = Field.create("AUXTEMPSENSOR1_TEMPC_3", 1920, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR1_RESISTANCE_1 = Field.create("AUXTEMPSENSOR1_RESISTANCE_1", 1924, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR1_RESISTANCE_2 = Field.create("AUXTEMPSENSOR1_RESISTANCE_2", 1928, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR1_RESISTANCE_3 = Field.create("AUXTEMPSENSOR1_RESISTANCE_3", 1932, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR1_BIAS_RESISTOR = Field.create("AUXTEMPSENSOR1_BIAS_RESISTOR", 1936, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR1_ADCCHANNEL = Field.create("AUXTEMPSENSOR1_ADCCHANNEL", 1940, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXTEMPSENSOR1_ALIGNMENTFILL_AT_29 = Field.create("AUXTEMPSENSOR1_ALIGNMENTFILL_AT_29", 1941, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field AUXTEMPSENSOR2_TEMPC_1 = Field.create("AUXTEMPSENSOR2_TEMPC_1", 1944, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR2_TEMPC_2 = Field.create("AUXTEMPSENSOR2_TEMPC_2", 1948, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR2_TEMPC_3 = Field.create("AUXTEMPSENSOR2_TEMPC_3", 1952, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR2_RESISTANCE_1 = Field.create("AUXTEMPSENSOR2_RESISTANCE_1", 1956, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR2_RESISTANCE_2 = Field.create("AUXTEMPSENSOR2_RESISTANCE_2", 1960, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR2_RESISTANCE_3 = Field.create("AUXTEMPSENSOR2_RESISTANCE_3", 1964, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR2_BIAS_RESISTOR = Field.create("AUXTEMPSENSOR2_BIAS_RESISTOR", 1968, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXTEMPSENSOR2_ADCCHANNEL = Field.create("AUXTEMPSENSOR2_ADCCHANNEL", 1972, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXTEMPSENSOR2_ALIGNMENTFILL_AT_29 = Field.create("AUXTEMPSENSOR2_ALIGNMENTFILL_AT_29", 1973, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field KNOCKSAMPLINGDURATION = Field.create("KNOCKSAMPLINGDURATION", 1976, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETBFREQ = Field.create("ETBFREQ", 1978, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETBWASTEGATEPID_PFACTOR = Field.create("ETBWASTEGATEPID_PFACTOR", 1980, FieldType.FLOAT).setBaseOffset(0); + public static final Field ETBWASTEGATEPID_IFACTOR = Field.create("ETBWASTEGATEPID_IFACTOR", 1984, FieldType.FLOAT).setBaseOffset(0); + public static final Field ETBWASTEGATEPID_DFACTOR = Field.create("ETBWASTEGATEPID_DFACTOR", 1988, FieldType.FLOAT).setBaseOffset(0); + public static final Field ETBWASTEGATEPID_OFFSET = Field.create("ETBWASTEGATEPID_OFFSET", 1992, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETBWASTEGATEPID_PERIODMS = Field.create("ETBWASTEGATEPID_PERIODMS", 1994, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETBWASTEGATEPID_MINVALUE = Field.create("ETBWASTEGATEPID_MINVALUE", 1996, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETBWASTEGATEPID_MAXVALUE = Field.create("ETBWASTEGATEPID_MAXVALUE", 1998, FieldType.INT16).setScale(1.0).setBaseOffset(0); public static final String[] stepper_num_micro_steps_e = {"Full-Step (Default)", "INVALID", "Half-Step", "INVALID", "1/4 Micro-Step", "INVALID", "INVALID", "INVALID", "1/8 Micro-Step"}; - public static final Field STEPPERNUMMICROSTEPS = Field.create("STEPPERNUMMICROSTEPS", 2080, FieldType.INT8, stepper_num_micro_steps_e).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERMINDUTYCYCLE = Field.create("STEPPERMINDUTYCYCLE", 2081, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERMAXDUTYCYCLE = Field.create("STEPPERMAXDUTYCYCLE", 2082, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field SDCARDSPIDEVICE = Field.create("SDCARDSPIDEVICE", 2083, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER1 = Field.create("TIMING_OFFSET_CYLINDER1", 2084, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER2 = Field.create("TIMING_OFFSET_CYLINDER2", 2088, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER3 = Field.create("TIMING_OFFSET_CYLINDER3", 2092, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER4 = Field.create("TIMING_OFFSET_CYLINDER4", 2096, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER5 = Field.create("TIMING_OFFSET_CYLINDER5", 2100, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER6 = Field.create("TIMING_OFFSET_CYLINDER6", 2104, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER7 = Field.create("TIMING_OFFSET_CYLINDER7", 2108, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER8 = Field.create("TIMING_OFFSET_CYLINDER8", 2112, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER9 = Field.create("TIMING_OFFSET_CYLINDER9", 2116, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER10 = Field.create("TIMING_OFFSET_CYLINDER10", 2120, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER11 = Field.create("TIMING_OFFSET_CYLINDER11", 2124, FieldType.FLOAT).setBaseOffset(0); - public static final Field TIMING_OFFSET_CYLINDER12 = Field.create("TIMING_OFFSET_CYLINDER12", 2128, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLEPIDACTIVATIONTIME = Field.create("IDLEPIDACTIVATIONTIME", 2132, FieldType.FLOAT).setBaseOffset(0); + public static final Field STEPPERNUMMICROSTEPS = Field.create("STEPPERNUMMICROSTEPS", 2000, FieldType.INT8, stepper_num_micro_steps_e).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERMINDUTYCYCLE = Field.create("STEPPERMINDUTYCYCLE", 2001, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERMAXDUTYCYCLE = Field.create("STEPPERMAXDUTYCYCLE", 2002, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SDCARDSPIDEVICE = Field.create("SDCARDSPIDEVICE", 2003, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER1 = Field.create("TIMING_OFFSET_CYLINDER1", 2004, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER2 = Field.create("TIMING_OFFSET_CYLINDER2", 2008, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER3 = Field.create("TIMING_OFFSET_CYLINDER3", 2012, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER4 = Field.create("TIMING_OFFSET_CYLINDER4", 2016, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER5 = Field.create("TIMING_OFFSET_CYLINDER5", 2020, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER6 = Field.create("TIMING_OFFSET_CYLINDER6", 2024, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER7 = Field.create("TIMING_OFFSET_CYLINDER7", 2028, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER8 = Field.create("TIMING_OFFSET_CYLINDER8", 2032, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER9 = Field.create("TIMING_OFFSET_CYLINDER9", 2036, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER10 = Field.create("TIMING_OFFSET_CYLINDER10", 2040, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER11 = Field.create("TIMING_OFFSET_CYLINDER11", 2044, FieldType.FLOAT).setBaseOffset(0); + public static final Field TIMING_OFFSET_CYLINDER12 = Field.create("TIMING_OFFSET_CYLINDER12", 2048, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLEPIDACTIVATIONTIME = Field.create("IDLEPIDACTIVATIONTIME", 2052, FieldType.FLOAT).setBaseOffset(0); public static final String[] pin_mode_e = {"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"}; - public static final Field SPI1SCKMODE = Field.create("SPI1SCKMODE", 2136, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI1MOSIMODE = Field.create("SPI1MOSIMODE", 2137, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI1MISOMODE = Field.create("SPI1MISOMODE", 2138, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI2SCKMODE = Field.create("SPI2SCKMODE", 2139, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI2MOSIMODE = Field.create("SPI2MOSIMODE", 2140, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI2MISOMODE = Field.create("SPI2MISOMODE", 2141, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI3SCKMODE = Field.create("SPI3SCKMODE", 2142, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI3MOSIMODE = Field.create("SPI3MOSIMODE", 2143, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI3MISOMODE = Field.create("SPI3MISOMODE", 2144, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERENABLEPINMODE = Field.create("STEPPERENABLEPINMODE", 2145, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field MC33816_RSTB = Field.create("MC33816_RSTB", 2146, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field MC33816_DRIVEN = Field.create("MC33816_DRIVEN", 2148, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field BRAKEPEDALPIN = Field.create("BRAKEPEDALPIN", 2150, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field BRAKEPEDALPINMODE = Field.create("BRAKEPEDALPINMODE", 2152, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_2153 = Field.create("ALIGNMENTFILL_AT_2153", 2153, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field AUXPID1_PFACTOR = Field.create("AUXPID1_PFACTOR", 2156, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXPID1_IFACTOR = Field.create("AUXPID1_IFACTOR", 2160, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXPID1_DFACTOR = Field.create("AUXPID1_DFACTOR", 2164, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXPID1_OFFSET = Field.create("AUXPID1_OFFSET", 2168, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field AUXPID1_PERIODMS = Field.create("AUXPID1_PERIODMS", 2170, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field AUXPID1_MINVALUE = Field.create("AUXPID1_MINVALUE", 2172, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field AUXPID1_MAXVALUE = Field.create("AUXPID1_MAXVALUE", 2174, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field AUXPID2_PFACTOR = Field.create("AUXPID2_PFACTOR", 2176, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXPID2_IFACTOR = Field.create("AUXPID2_IFACTOR", 2180, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXPID2_DFACTOR = Field.create("AUXPID2_DFACTOR", 2184, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXPID2_OFFSET = Field.create("AUXPID2_OFFSET", 2188, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field AUXPID2_PERIODMS = Field.create("AUXPID2_PERIODMS", 2190, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field AUXPID2_MINVALUE = Field.create("AUXPID2_MINVALUE", 2192, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field AUXPID2_MAXVALUE = Field.create("AUXPID2_MAXVALUE", 2194, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field INJECTORCORRECTIONPOLYNOMIAL1 = Field.create("INJECTORCORRECTIONPOLYNOMIAL1", 2196, FieldType.FLOAT).setBaseOffset(0); - public static final Field INJECTORCORRECTIONPOLYNOMIAL2 = Field.create("INJECTORCORRECTIONPOLYNOMIAL2", 2200, FieldType.FLOAT).setBaseOffset(0); - public static final Field INJECTORCORRECTIONPOLYNOMIAL3 = Field.create("INJECTORCORRECTIONPOLYNOMIAL3", 2204, FieldType.FLOAT).setBaseOffset(0); - public static final Field INJECTORCORRECTIONPOLYNOMIAL4 = Field.create("INJECTORCORRECTIONPOLYNOMIAL4", 2208, FieldType.FLOAT).setBaseOffset(0); - public static final Field INJECTORCORRECTIONPOLYNOMIAL5 = Field.create("INJECTORCORRECTIONPOLYNOMIAL5", 2212, FieldType.FLOAT).setBaseOffset(0); - public static final Field INJECTORCORRECTIONPOLYNOMIAL6 = Field.create("INJECTORCORRECTIONPOLYNOMIAL6", 2216, FieldType.FLOAT).setBaseOffset(0); - public static final Field INJECTORCORRECTIONPOLYNOMIAL7 = Field.create("INJECTORCORRECTIONPOLYNOMIAL7", 2220, FieldType.FLOAT).setBaseOffset(0); - public static final Field INJECTORCORRECTIONPOLYNOMIAL8 = Field.create("INJECTORCORRECTIONPOLYNOMIAL8", 2224, FieldType.FLOAT).setBaseOffset(0); - public static final Field PRIMEBINS = Field.create("PRIMEBINS", 2228, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field OILPRESSURE_HWCHANNEL = Field.create("OILPRESSURE_HWCHANNEL", 2236, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field OILPRESSURE_ALIGNMENTFILL_AT_1 = Field.create("OILPRESSURE_ALIGNMENTFILL_AT_1", 2237, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field OILPRESSURE_V1 = Field.create("OILPRESSURE_V1", 2240, FieldType.FLOAT).setBaseOffset(0); - public static final Field OILPRESSURE_VALUE1 = Field.create("OILPRESSURE_VALUE1", 2244, FieldType.FLOAT).setBaseOffset(0); - public static final Field OILPRESSURE_V2 = Field.create("OILPRESSURE_V2", 2248, FieldType.FLOAT).setBaseOffset(0); - public static final Field OILPRESSURE_VALUE2 = Field.create("OILPRESSURE_VALUE2", 2252, FieldType.FLOAT).setBaseOffset(0); - public static final Field ACCELEROMETERSPIDEVICE = Field.create("ACCELEROMETERSPIDEVICE", 2256, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_2257 = Field.create("ALIGNMENTFILL_AT_2257", 2257, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FAN2PIN = Field.create("FAN2PIN", 2258, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field FAN2ONTEMPERATURE = Field.create("FAN2ONTEMPERATURE", 2260, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FAN2OFFTEMPERATURE = Field.create("FAN2OFFTEMPERATURE", 2261, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STEPPERENABLEPIN = Field.create("STEPPERENABLEPIN", 2262, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field TLE8888_CS = Field.create("TLE8888_CS", 2264, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field TLE8888_CSPINMODE = Field.create("TLE8888_CSPINMODE", 2266, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_2267 = Field.create("ALIGNMENTFILL_AT_2267", 2267, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MC33816_CS = Field.create("MC33816_CS", 2268, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_2270 = Field.create("ALIGNMENTFILL_AT_2270", 2270, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field AUXFREQUENCYFILTER = Field.create("AUXFREQUENCYFILTER", 2272, FieldType.FLOAT).setBaseOffset(0); - public static final Field VVTCONTROLMINRPM = Field.create("VVTCONTROLMINRPM", 2276, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SPI1SCKMODE = Field.create("SPI1SCKMODE", 2056, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI1MOSIMODE = Field.create("SPI1MOSIMODE", 2057, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI1MISOMODE = Field.create("SPI1MISOMODE", 2058, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI2SCKMODE = Field.create("SPI2SCKMODE", 2059, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI2MOSIMODE = Field.create("SPI2MOSIMODE", 2060, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI2MISOMODE = Field.create("SPI2MISOMODE", 2061, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI3SCKMODE = Field.create("SPI3SCKMODE", 2062, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI3MOSIMODE = Field.create("SPI3MOSIMODE", 2063, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI3MISOMODE = Field.create("SPI3MISOMODE", 2064, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERENABLEPINMODE = Field.create("STEPPERENABLEPINMODE", 2065, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field MC33816_RSTB = Field.create("MC33816_RSTB", 2066, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field MC33816_DRIVEN = Field.create("MC33816_DRIVEN", 2068, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field BRAKEPEDALPIN = Field.create("BRAKEPEDALPIN", 2070, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXPID1_PFACTOR = Field.create("AUXPID1_PFACTOR", 2072, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXPID1_IFACTOR = Field.create("AUXPID1_IFACTOR", 2076, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXPID1_DFACTOR = Field.create("AUXPID1_DFACTOR", 2080, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXPID1_OFFSET = Field.create("AUXPID1_OFFSET", 2084, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field AUXPID1_PERIODMS = Field.create("AUXPID1_PERIODMS", 2086, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field AUXPID1_MINVALUE = Field.create("AUXPID1_MINVALUE", 2088, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field AUXPID1_MAXVALUE = Field.create("AUXPID1_MAXVALUE", 2090, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field AUXPID2_PFACTOR = Field.create("AUXPID2_PFACTOR", 2092, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXPID2_IFACTOR = Field.create("AUXPID2_IFACTOR", 2096, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXPID2_DFACTOR = Field.create("AUXPID2_DFACTOR", 2100, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXPID2_OFFSET = Field.create("AUXPID2_OFFSET", 2104, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field AUXPID2_PERIODMS = Field.create("AUXPID2_PERIODMS", 2106, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field AUXPID2_MINVALUE = Field.create("AUXPID2_MINVALUE", 2108, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field AUXPID2_MAXVALUE = Field.create("AUXPID2_MAXVALUE", 2110, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field INJECTORCORRECTIONPOLYNOMIAL1 = Field.create("INJECTORCORRECTIONPOLYNOMIAL1", 2112, FieldType.FLOAT).setBaseOffset(0); + public static final Field INJECTORCORRECTIONPOLYNOMIAL2 = Field.create("INJECTORCORRECTIONPOLYNOMIAL2", 2116, FieldType.FLOAT).setBaseOffset(0); + public static final Field INJECTORCORRECTIONPOLYNOMIAL3 = Field.create("INJECTORCORRECTIONPOLYNOMIAL3", 2120, FieldType.FLOAT).setBaseOffset(0); + public static final Field INJECTORCORRECTIONPOLYNOMIAL4 = Field.create("INJECTORCORRECTIONPOLYNOMIAL4", 2124, FieldType.FLOAT).setBaseOffset(0); + public static final Field INJECTORCORRECTIONPOLYNOMIAL5 = Field.create("INJECTORCORRECTIONPOLYNOMIAL5", 2128, FieldType.FLOAT).setBaseOffset(0); + public static final Field INJECTORCORRECTIONPOLYNOMIAL6 = Field.create("INJECTORCORRECTIONPOLYNOMIAL6", 2132, FieldType.FLOAT).setBaseOffset(0); + public static final Field INJECTORCORRECTIONPOLYNOMIAL7 = Field.create("INJECTORCORRECTIONPOLYNOMIAL7", 2136, FieldType.FLOAT).setBaseOffset(0); + public static final Field INJECTORCORRECTIONPOLYNOMIAL8 = Field.create("INJECTORCORRECTIONPOLYNOMIAL8", 2140, FieldType.FLOAT).setBaseOffset(0); + public static final Field PRIMEBINS = Field.create("PRIMEBINS", 2144, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field OILPRESSURE_HWCHANNEL = Field.create("OILPRESSURE_HWCHANNEL", 2152, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field OILPRESSURE_ALIGNMENTFILL_AT_1 = Field.create("OILPRESSURE_ALIGNMENTFILL_AT_1", 2153, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field OILPRESSURE_V1 = Field.create("OILPRESSURE_V1", 2156, FieldType.FLOAT).setBaseOffset(0); + public static final Field OILPRESSURE_VALUE1 = Field.create("OILPRESSURE_VALUE1", 2160, FieldType.FLOAT).setBaseOffset(0); + public static final Field OILPRESSURE_V2 = Field.create("OILPRESSURE_V2", 2164, FieldType.FLOAT).setBaseOffset(0); + public static final Field OILPRESSURE_VALUE2 = Field.create("OILPRESSURE_VALUE2", 2168, FieldType.FLOAT).setBaseOffset(0); + public static final Field ACCELEROMETERSPIDEVICE = Field.create("ACCELEROMETERSPIDEVICE", 2172, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_2173 = Field.create("ALIGNMENTFILL_AT_2173", 2173, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FAN2PIN = Field.create("FAN2PIN", 2174, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field FAN2ONTEMPERATURE = Field.create("FAN2ONTEMPERATURE", 2176, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FAN2OFFTEMPERATURE = Field.create("FAN2OFFTEMPERATURE", 2177, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STEPPERENABLEPIN = Field.create("STEPPERENABLEPIN", 2178, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field TLE8888_CS = Field.create("TLE8888_CS", 2180, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field TLE8888_CSPINMODE = Field.create("TLE8888_CSPINMODE", 2182, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_2183 = Field.create("ALIGNMENTFILL_AT_2183", 2183, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MC33816_CS = Field.create("MC33816_CS", 2184, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_2186 = Field.create("ALIGNMENTFILL_AT_2186", 2186, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field AUXFREQUENCYFILTER = Field.create("AUXFREQUENCYFILTER", 2188, FieldType.FLOAT).setBaseOffset(0); public static final String[] sent_input_pin_e = {"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"}; - public static final Field SENTINPUTPINS1 = Field.create("SENTINPUTPINS1", 2278, FieldType.INT16, sent_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LAUNCHFUELADDERPERCENT = Field.create("LAUNCHFUELADDERPERCENT", 2280, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ETBJAMTIMEOUT = Field.create("ETBJAMTIMEOUT", 2281, FieldType.INT8).setScale(0.02).setBaseOffset(0); - public static final Field ETBEXPAVERAGELENGTH = Field.create("ETBEXPAVERAGELENGTH", 2282, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field UNUSED645646 = Field.create("UNUSED645646", 2284, FieldType.FLOAT).setBaseOffset(0); - public static final Field COASTINGFUELCUTRPMHIGH = Field.create("COASTINGFUELCUTRPMHIGH", 2288, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field COASTINGFUELCUTRPMLOW = Field.create("COASTINGFUELCUTRPMLOW", 2290, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field COASTINGFUELCUTTPS = Field.create("COASTINGFUELCUTTPS", 2292, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field COASTINGFUELCUTCLT = Field.create("COASTINGFUELCUTCLT", 2294, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field PIDEXTRAFORLOWRPM = Field.create("PIDEXTRAFORLOWRPM", 2296, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field COASTINGFUELCUTMAP = Field.create("COASTINGFUELCUTMAP", 2298, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field HIGHPRESSUREFUEL_HWCHANNEL = Field.create("HIGHPRESSUREFUEL_HWCHANNEL", 2300, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field HIGHPRESSUREFUEL_ALIGNMENTFILL_AT_1 = Field.create("HIGHPRESSUREFUEL_ALIGNMENTFILL_AT_1", 2301, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HIGHPRESSUREFUEL_V1 = Field.create("HIGHPRESSUREFUEL_V1", 2304, FieldType.FLOAT).setBaseOffset(0); - public static final Field HIGHPRESSUREFUEL_VALUE1 = Field.create("HIGHPRESSUREFUEL_VALUE1", 2308, FieldType.FLOAT).setBaseOffset(0); - public static final Field HIGHPRESSUREFUEL_V2 = Field.create("HIGHPRESSUREFUEL_V2", 2312, FieldType.FLOAT).setBaseOffset(0); - public static final Field HIGHPRESSUREFUEL_VALUE2 = Field.create("HIGHPRESSUREFUEL_VALUE2", 2316, FieldType.FLOAT).setBaseOffset(0); - public static final Field LOWPRESSUREFUEL_HWCHANNEL = Field.create("LOWPRESSUREFUEL_HWCHANNEL", 2320, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field LOWPRESSUREFUEL_ALIGNMENTFILL_AT_1 = Field.create("LOWPRESSUREFUEL_ALIGNMENTFILL_AT_1", 2321, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field LOWPRESSUREFUEL_V1 = Field.create("LOWPRESSUREFUEL_V1", 2324, FieldType.FLOAT).setBaseOffset(0); - public static final Field LOWPRESSUREFUEL_VALUE1 = Field.create("LOWPRESSUREFUEL_VALUE1", 2328, FieldType.FLOAT).setBaseOffset(0); - public static final Field LOWPRESSUREFUEL_V2 = Field.create("LOWPRESSUREFUEL_V2", 2332, FieldType.FLOAT).setBaseOffset(0); - public static final Field LOWPRESSUREFUEL_VALUE2 = Field.create("LOWPRESSUREFUEL_VALUE2", 2336, FieldType.FLOAT).setBaseOffset(0); - public static final Field CLTREVLIMITRPMBINS = Field.create("CLTREVLIMITRPMBINS", 2340, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CLTREVLIMITRPM = Field.create("CLTREVLIMITRPM", 2344, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTCURVENAME1 = Field.create("SCRIPTCURVENAME1", 2352, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTCURVENAME2 = Field.create("SCRIPTCURVENAME2", 2368, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTCURVENAME3 = Field.create("SCRIPTCURVENAME3", 2384, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTCURVENAME4 = Field.create("SCRIPTCURVENAME4", 2400, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTCURVENAME5 = Field.create("SCRIPTCURVENAME5", 2416, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTCURVENAME6 = Field.create("SCRIPTCURVENAME6", 2432, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLENAME1 = Field.create("SCRIPTTABLENAME1", 2448, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLENAME2 = Field.create("SCRIPTTABLENAME2", 2464, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLENAME3 = Field.create("SCRIPTTABLENAME3", 2480, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLENAME4 = Field.create("SCRIPTTABLENAME4", 2496, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTINGNAME1 = Field.create("SCRIPTSETTINGNAME1", 2512, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTINGNAME2 = Field.create("SCRIPTSETTINGNAME2", 2528, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTINGNAME3 = Field.create("SCRIPTSETTINGNAME3", 2544, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTINGNAME4 = Field.create("SCRIPTSETTINGNAME4", 2560, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTINGNAME5 = Field.create("SCRIPTSETTINGNAME5", 2576, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTINGNAME6 = Field.create("SCRIPTSETTINGNAME6", 2592, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTINGNAME7 = Field.create("SCRIPTSETTINGNAME7", 2608, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTSETTINGNAME8 = Field.create("SCRIPTSETTINGNAME8", 2624, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field TCHARGEAIRCOEFMIN = Field.create("TCHARGEAIRCOEFMIN", 2640, FieldType.FLOAT).setBaseOffset(0); - public static final Field TCHARGEAIRCOEFMAX = Field.create("TCHARGEAIRCOEFMAX", 2644, FieldType.FLOAT).setBaseOffset(0); - public static final Field TCHARGEAIRFLOWMAX = Field.create("TCHARGEAIRFLOWMAX", 2648, FieldType.FLOAT).setBaseOffset(0); - public static final Field TCHARGEAIRINCRLIMIT = Field.create("TCHARGEAIRINCRLIMIT", 2652, FieldType.FLOAT).setBaseOffset(0); - public static final Field TCHARGEAIRDECRLIMIT = Field.create("TCHARGEAIRDECRLIMIT", 2656, FieldType.FLOAT).setBaseOffset(0); - public static final String[] tChargeMode_e = {"RPM+TPS (Default)", "Air Mass Interpolation", "Table"}; - public static final Field TCHARGEMODE = Field.create("TCHARGEMODE", 2660, FieldType.INT8, tChargeMode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_2661 = Field.create("ALIGNMENTFILL_AT_2661", 2661, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HIP9011GAIN = Field.create("HIP9011GAIN", 2664, FieldType.FLOAT).setBaseOffset(0); - public static final Field ETB_ITERMMIN = Field.create("ETB_ITERMMIN", 2668, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETB_ITERMMAX = Field.create("ETB_ITERMMAX", 2670, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLETIMINGPID_PFACTOR = Field.create("IDLETIMINGPID_PFACTOR", 2672, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLETIMINGPID_IFACTOR = Field.create("IDLETIMINGPID_IFACTOR", 2676, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLETIMINGPID_DFACTOR = Field.create("IDLETIMINGPID_DFACTOR", 2680, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLETIMINGPID_OFFSET = Field.create("IDLETIMINGPID_OFFSET", 2684, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLETIMINGPID_PERIODMS = Field.create("IDLETIMINGPID_PERIODMS", 2686, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLETIMINGPID_MINVALUE = Field.create("IDLETIMINGPID_MINVALUE", 2688, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLETIMINGPID_MAXVALUE = Field.create("IDLETIMINGPID_MAXVALUE", 2690, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IDLETIMINGSOFTENTRYTIME = Field.create("IDLETIMINGSOFTENTRYTIME", 2692, FieldType.FLOAT).setBaseOffset(0); - public static final Field ETBROCEXPAVERAGELENGTH = Field.create("ETBROCEXPAVERAGELENGTH", 2696, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TPSACCELFRACTIONPERIOD = Field.create("TPSACCELFRACTIONPERIOD", 2698, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TPSACCELFRACTIONDIVISOR = Field.create("TPSACCELFRACTIONDIVISOR", 2700, FieldType.FLOAT).setBaseOffset(0); - public static final Field TLE8888SPIDEVICE = Field.create("TLE8888SPIDEVICE", 2704, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MC33816SPIDEVICE = Field.create("MC33816SPIDEVICE", 2705, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IDLERPMPID_ITERMMIN = Field.create("IDLERPMPID_ITERMMIN", 2706, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TLE6240SPIDEVICE = Field.create("TLE6240SPIDEVICE", 2708, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field STOICHRATIOPRIMARY = Field.create("STOICHRATIOPRIMARY", 2709, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field IDLERPMPID_ITERMMAX = Field.create("IDLERPMPID_ITERMMAX", 2710, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ETBIDLETHROTTLERANGE = Field.create("ETBIDLETHROTTLERANGE", 2712, FieldType.FLOAT).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT1 = Field.create("CYLINDERBANKSELECT1", 2716, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT2 = Field.create("CYLINDERBANKSELECT2", 2717, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT3 = Field.create("CYLINDERBANKSELECT3", 2718, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT4 = Field.create("CYLINDERBANKSELECT4", 2719, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT5 = Field.create("CYLINDERBANKSELECT5", 2720, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT6 = Field.create("CYLINDERBANKSELECT6", 2721, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT7 = Field.create("CYLINDERBANKSELECT7", 2722, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT8 = Field.create("CYLINDERBANKSELECT8", 2723, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT9 = Field.create("CYLINDERBANKSELECT9", 2724, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT10 = Field.create("CYLINDERBANKSELECT10", 2725, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT11 = Field.create("CYLINDERBANKSELECT11", 2726, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CYLINDERBANKSELECT12 = Field.create("CYLINDERBANKSELECT12", 2727, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field PRIMEVALUES = Field.create("PRIMEVALUES", 2728, FieldType.INT8).setScale(5.0).setBaseOffset(0); - public static final Field TRIGGERCOMPCENTERVOLT = Field.create("TRIGGERCOMPCENTERVOLT", 2736, FieldType.INT8).setScale(0.02).setBaseOffset(0); - public static final Field TRIGGERCOMPHYSTMIN = Field.create("TRIGGERCOMPHYSTMIN", 2737, FieldType.INT8).setScale(0.02).setBaseOffset(0); - public static final Field TRIGGERCOMPHYSTMAX = Field.create("TRIGGERCOMPHYSTMAX", 2738, FieldType.INT8).setScale(0.02).setBaseOffset(0); - public static final Field TRIGGERCOMPSENSORSATRPM = Field.create("TRIGGERCOMPSENSORSATRPM", 2739, FieldType.INT8).setScale(50.0).setBaseOffset(0); - public static final Field TRACTIONCONTROLSLIPBINS = Field.create("TRACTIONCONTROLSLIPBINS", 2740, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field TRACTIONCONTROLSPEEDBINS = Field.create("TRACTIONCONTROLSPEEDBINS", 2752, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field DISABLEFAN1ATSPEED = Field.create("DISABLEFAN1ATSPEED", 2758, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field DISABLEFAN2ATSPEED = Field.create("DISABLEFAN2ATSPEED", 2759, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field CANVSSNBCTYPE = Field.create("CANVSSNBCTYPE", 2760, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_2762 = Field.create("ALIGNMENTFILL_AT_2762", 2762, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM1_PIN = Field.create("GPPWM1_PIN", 2764, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM1_DUTYIFERROR = Field.create("GPPWM1_DUTYIFERROR", 2766, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM1_ALIGNMENTFILL_AT_3 = Field.create("GPPWM1_ALIGNMENTFILL_AT_3", 2767, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM1_PWMFREQUENCY = Field.create("GPPWM1_PWMFREQUENCY", 2768, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM1_ONABOVEDUTY = Field.create("GPPWM1_ONABOVEDUTY", 2770, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM1_OFFBELOWDUTY = Field.create("GPPWM1_OFFBELOWDUTY", 2771, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SENTINPUTPINS1 = Field.create("SENTINPUTPINS1", 2192, FieldType.INT16, sent_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field COASTINGFUELCUTRPMHIGH = Field.create("COASTINGFUELCUTRPMHIGH", 2194, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field COASTINGFUELCUTRPMLOW = Field.create("COASTINGFUELCUTRPMLOW", 2196, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field COASTINGFUELCUTTPS = Field.create("COASTINGFUELCUTTPS", 2198, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field COASTINGFUELCUTCLT = Field.create("COASTINGFUELCUTCLT", 2200, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field PIDEXTRAFORLOWRPM = Field.create("PIDEXTRAFORLOWRPM", 2202, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field COASTINGFUELCUTMAP = Field.create("COASTINGFUELCUTMAP", 2204, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_2206 = Field.create("ALIGNMENTFILL_AT_2206", 2206, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HIGHPRESSUREFUEL_HWCHANNEL = Field.create("HIGHPRESSUREFUEL_HWCHANNEL", 2208, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field HIGHPRESSUREFUEL_ALIGNMENTFILL_AT_1 = Field.create("HIGHPRESSUREFUEL_ALIGNMENTFILL_AT_1", 2209, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HIGHPRESSUREFUEL_V1 = Field.create("HIGHPRESSUREFUEL_V1", 2212, FieldType.FLOAT).setBaseOffset(0); + public static final Field HIGHPRESSUREFUEL_VALUE1 = Field.create("HIGHPRESSUREFUEL_VALUE1", 2216, FieldType.FLOAT).setBaseOffset(0); + public static final Field HIGHPRESSUREFUEL_V2 = Field.create("HIGHPRESSUREFUEL_V2", 2220, FieldType.FLOAT).setBaseOffset(0); + public static final Field HIGHPRESSUREFUEL_VALUE2 = Field.create("HIGHPRESSUREFUEL_VALUE2", 2224, FieldType.FLOAT).setBaseOffset(0); + public static final Field LOWPRESSUREFUEL_HWCHANNEL = Field.create("LOWPRESSUREFUEL_HWCHANNEL", 2228, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field LOWPRESSUREFUEL_ALIGNMENTFILL_AT_1 = Field.create("LOWPRESSUREFUEL_ALIGNMENTFILL_AT_1", 2229, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field LOWPRESSUREFUEL_V1 = Field.create("LOWPRESSUREFUEL_V1", 2232, FieldType.FLOAT).setBaseOffset(0); + public static final Field LOWPRESSUREFUEL_VALUE1 = Field.create("LOWPRESSUREFUEL_VALUE1", 2236, FieldType.FLOAT).setBaseOffset(0); + public static final Field LOWPRESSUREFUEL_V2 = Field.create("LOWPRESSUREFUEL_V2", 2240, FieldType.FLOAT).setBaseOffset(0); + public static final Field LOWPRESSUREFUEL_VALUE2 = Field.create("LOWPRESSUREFUEL_VALUE2", 2244, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVENAME1 = Field.create("SCRIPTCURVENAME1", 2248, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTCURVENAME2 = Field.create("SCRIPTCURVENAME2", 2264, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTCURVENAME3 = Field.create("SCRIPTCURVENAME3", 2280, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTCURVENAME4 = Field.create("SCRIPTCURVENAME4", 2296, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTCURVENAME5 = Field.create("SCRIPTCURVENAME5", 2312, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTCURVENAME6 = Field.create("SCRIPTCURVENAME6", 2328, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLENAME1 = Field.create("SCRIPTTABLENAME1", 2344, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLENAME2 = Field.create("SCRIPTTABLENAME2", 2360, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLENAME3 = Field.create("SCRIPTTABLENAME3", 2376, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLENAME4 = Field.create("SCRIPTTABLENAME4", 2392, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTINGNAME1 = Field.create("SCRIPTSETTINGNAME1", 2408, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTINGNAME2 = Field.create("SCRIPTSETTINGNAME2", 2424, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTINGNAME3 = Field.create("SCRIPTSETTINGNAME3", 2440, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTINGNAME4 = Field.create("SCRIPTSETTINGNAME4", 2456, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTINGNAME5 = Field.create("SCRIPTSETTINGNAME5", 2472, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTINGNAME6 = Field.create("SCRIPTSETTINGNAME6", 2488, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTINGNAME7 = Field.create("SCRIPTSETTINGNAME7", 2504, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTSETTINGNAME8 = Field.create("SCRIPTSETTINGNAME8", 2520, 16, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field TCHARGEAIRCOEFMIN = Field.create("TCHARGEAIRCOEFMIN", 2536, FieldType.FLOAT).setBaseOffset(0); + public static final Field TCHARGEAIRCOEFMAX = Field.create("TCHARGEAIRCOEFMAX", 2540, FieldType.FLOAT).setBaseOffset(0); + public static final Field TCHARGEAIRFLOWMAX = Field.create("TCHARGEAIRFLOWMAX", 2544, FieldType.FLOAT).setBaseOffset(0); + public static final Field TCHARGEAIRINCRLIMIT = Field.create("TCHARGEAIRINCRLIMIT", 2548, FieldType.FLOAT).setBaseOffset(0); + public static final Field TCHARGEAIRDECRLIMIT = Field.create("TCHARGEAIRDECRLIMIT", 2552, FieldType.FLOAT).setBaseOffset(0); + public static final Field HIP9011GAIN = Field.create("HIP9011GAIN", 2556, FieldType.FLOAT).setBaseOffset(0); + public static final Field ETB_ITERMMIN = Field.create("ETB_ITERMMIN", 2560, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETB_ITERMMAX = Field.create("ETB_ITERMMAX", 2562, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLETIMINGPID_PFACTOR = Field.create("IDLETIMINGPID_PFACTOR", 2564, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLETIMINGPID_IFACTOR = Field.create("IDLETIMINGPID_IFACTOR", 2568, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLETIMINGPID_DFACTOR = Field.create("IDLETIMINGPID_DFACTOR", 2572, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLETIMINGPID_OFFSET = Field.create("IDLETIMINGPID_OFFSET", 2576, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLETIMINGPID_PERIODMS = Field.create("IDLETIMINGPID_PERIODMS", 2578, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLETIMINGPID_MINVALUE = Field.create("IDLETIMINGPID_MINVALUE", 2580, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLETIMINGPID_MAXVALUE = Field.create("IDLETIMINGPID_MAXVALUE", 2582, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IDLETIMINGSOFTENTRYTIME = Field.create("IDLETIMINGSOFTENTRYTIME", 2584, FieldType.FLOAT).setBaseOffset(0); + public static final Field ETBROCEXPAVERAGELENGTH = Field.create("ETBROCEXPAVERAGELENGTH", 2588, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TPSACCELFRACTIONPERIOD = Field.create("TPSACCELFRACTIONPERIOD", 2590, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TPSACCELFRACTIONDIVISOR = Field.create("TPSACCELFRACTIONDIVISOR", 2592, FieldType.FLOAT).setBaseOffset(0); + public static final Field TLE8888SPIDEVICE = Field.create("TLE8888SPIDEVICE", 2596, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MC33816SPIDEVICE = Field.create("MC33816SPIDEVICE", 2597, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IDLERPMPID_ITERMMIN = Field.create("IDLERPMPID_ITERMMIN", 2598, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TLE6240SPIDEVICE = Field.create("TLE6240SPIDEVICE", 2600, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field STOICHRATIOPRIMARY = Field.create("STOICHRATIOPRIMARY", 2601, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field IDLERPMPID_ITERMMAX = Field.create("IDLERPMPID_ITERMMAX", 2602, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ETBIDLETHROTTLERANGE = Field.create("ETBIDLETHROTTLERANGE", 2604, FieldType.FLOAT).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT1 = Field.create("CYLINDERBANKSELECT1", 2608, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT2 = Field.create("CYLINDERBANKSELECT2", 2609, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT3 = Field.create("CYLINDERBANKSELECT3", 2610, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT4 = Field.create("CYLINDERBANKSELECT4", 2611, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT5 = Field.create("CYLINDERBANKSELECT5", 2612, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT6 = Field.create("CYLINDERBANKSELECT6", 2613, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT7 = Field.create("CYLINDERBANKSELECT7", 2614, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT8 = Field.create("CYLINDERBANKSELECT8", 2615, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT9 = Field.create("CYLINDERBANKSELECT9", 2616, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT10 = Field.create("CYLINDERBANKSELECT10", 2617, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT11 = Field.create("CYLINDERBANKSELECT11", 2618, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CYLINDERBANKSELECT12 = Field.create("CYLINDERBANKSELECT12", 2619, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field PRIMEVALUES = Field.create("PRIMEVALUES", 2620, FieldType.INT8).setScale(5.0).setBaseOffset(0); + public static final Field TRIGGERCOMPCENTERVOLT = Field.create("TRIGGERCOMPCENTERVOLT", 2628, FieldType.INT8).setScale(0.02).setBaseOffset(0); + public static final Field TRIGGERCOMPHYSTMIN = Field.create("TRIGGERCOMPHYSTMIN", 2629, FieldType.INT8).setScale(0.02).setBaseOffset(0); + public static final Field TRIGGERCOMPHYSTMAX = Field.create("TRIGGERCOMPHYSTMAX", 2630, FieldType.INT8).setScale(0.02).setBaseOffset(0); + public static final Field TRIGGERCOMPSENSORSATRPM = Field.create("TRIGGERCOMPSENSORSATRPM", 2631, FieldType.INT8).setScale(50.0).setBaseOffset(0); + public static final Field TRACTIONCONTROLSLIPBINS = Field.create("TRACTIONCONTROLSLIPBINS", 2632, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field TRACTIONCONTROLSPEEDBINS = Field.create("TRACTIONCONTROLSPEEDBINS", 2644, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field DISABLEFAN1ATSPEED = Field.create("DISABLEFAN1ATSPEED", 2650, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field DISABLEFAN2ATSPEED = Field.create("DISABLEFAN2ATSPEED", 2651, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CANVSSNBCTYPE = Field.create("CANVSSNBCTYPE", 2652, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_2654 = Field.create("ALIGNMENTFILL_AT_2654", 2654, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM1_PIN = Field.create("GPPWM1_PIN", 2656, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM1_DUTYIFERROR = Field.create("GPPWM1_DUTYIFERROR", 2658, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM1_ALIGNMENTFILL_AT_3 = Field.create("GPPWM1_ALIGNMENTFILL_AT_3", 2659, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM1_PWMFREQUENCY = Field.create("GPPWM1_PWMFREQUENCY", 2660, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM1_ONABOVEDUTY = Field.create("GPPWM1_ONABOVEDUTY", 2662, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM1_OFFBELOWDUTY = Field.create("GPPWM1_OFFBELOWDUTY", 2663, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final String[] gppwm_channel_e = {"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"}; - public static final Field GPPWM1_LOADAXIS = Field.create("GPPWM1_LOADAXIS", 2772, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM1_RPMAXIS = Field.create("GPPWM1_RPMAXIS", 2773, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM1_LOADBINS = Field.create("GPPWM1_LOADBINS", 2774, FieldType.INT16).setScale(0.5).setBaseOffset(0); - public static final Field GPPWM1_RPMBINS = Field.create("GPPWM1_RPMBINS", 2790, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM1_TABLE = Field.create("GPPWM1_TABLE", 2806, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field GPPWM1_ALIGNMENTFILL_AT_106 = Field.create("GPPWM1_ALIGNMENTFILL_AT_106", 2870, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM2_PIN = Field.create("GPPWM2_PIN", 2872, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM2_DUTYIFERROR = Field.create("GPPWM2_DUTYIFERROR", 2874, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM2_ALIGNMENTFILL_AT_3 = Field.create("GPPWM2_ALIGNMENTFILL_AT_3", 2875, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM2_PWMFREQUENCY = Field.create("GPPWM2_PWMFREQUENCY", 2876, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM2_ONABOVEDUTY = Field.create("GPPWM2_ONABOVEDUTY", 2878, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM2_OFFBELOWDUTY = Field.create("GPPWM2_OFFBELOWDUTY", 2879, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM2_LOADAXIS = Field.create("GPPWM2_LOADAXIS", 2880, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM2_RPMAXIS = Field.create("GPPWM2_RPMAXIS", 2881, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM2_LOADBINS = Field.create("GPPWM2_LOADBINS", 2882, FieldType.INT16).setScale(0.5).setBaseOffset(0); - public static final Field GPPWM2_RPMBINS = Field.create("GPPWM2_RPMBINS", 2898, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM2_TABLE = Field.create("GPPWM2_TABLE", 2914, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field GPPWM2_ALIGNMENTFILL_AT_106 = Field.create("GPPWM2_ALIGNMENTFILL_AT_106", 2978, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM3_PIN = Field.create("GPPWM3_PIN", 2980, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM3_DUTYIFERROR = Field.create("GPPWM3_DUTYIFERROR", 2982, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM3_ALIGNMENTFILL_AT_3 = Field.create("GPPWM3_ALIGNMENTFILL_AT_3", 2983, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM3_PWMFREQUENCY = Field.create("GPPWM3_PWMFREQUENCY", 2984, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM3_ONABOVEDUTY = Field.create("GPPWM3_ONABOVEDUTY", 2986, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM3_OFFBELOWDUTY = Field.create("GPPWM3_OFFBELOWDUTY", 2987, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM3_LOADAXIS = Field.create("GPPWM3_LOADAXIS", 2988, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM3_RPMAXIS = Field.create("GPPWM3_RPMAXIS", 2989, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM3_LOADBINS = Field.create("GPPWM3_LOADBINS", 2990, FieldType.INT16).setScale(0.5).setBaseOffset(0); - public static final Field GPPWM3_RPMBINS = Field.create("GPPWM3_RPMBINS", 3006, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM3_TABLE = Field.create("GPPWM3_TABLE", 3022, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field GPPWM3_ALIGNMENTFILL_AT_106 = Field.create("GPPWM3_ALIGNMENTFILL_AT_106", 3086, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM4_PIN = Field.create("GPPWM4_PIN", 3088, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM4_DUTYIFERROR = Field.create("GPPWM4_DUTYIFERROR", 3090, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM4_ALIGNMENTFILL_AT_3 = Field.create("GPPWM4_ALIGNMENTFILL_AT_3", 3091, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM4_PWMFREQUENCY = Field.create("GPPWM4_PWMFREQUENCY", 3092, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM4_ONABOVEDUTY = Field.create("GPPWM4_ONABOVEDUTY", 3094, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM4_OFFBELOWDUTY = Field.create("GPPWM4_OFFBELOWDUTY", 3095, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM4_LOADAXIS = Field.create("GPPWM4_LOADAXIS", 3096, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM4_RPMAXIS = Field.create("GPPWM4_RPMAXIS", 3097, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM4_LOADBINS = Field.create("GPPWM4_LOADBINS", 3098, FieldType.INT16).setScale(0.5).setBaseOffset(0); - public static final Field GPPWM4_RPMBINS = Field.create("GPPWM4_RPMBINS", 3114, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field GPPWM4_TABLE = Field.create("GPPWM4_TABLE", 3130, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field GPPWM4_ALIGNMENTFILL_AT_106 = Field.create("GPPWM4_ALIGNMENTFILL_AT_106", 3194, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MC33_I_BOOST = Field.create("MC33_I_BOOST", 3196, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field MC33_I_PEAK = Field.create("MC33_I_PEAK", 3198, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field MC33_I_HOLD = Field.create("MC33_I_HOLD", 3200, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field MC33_T_MAX_BOOST = Field.create("MC33_T_MAX_BOOST", 3202, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field MC33_T_PEAK_OFF = Field.create("MC33_T_PEAK_OFF", 3204, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field MC33_T_PEAK_TOT = Field.create("MC33_T_PEAK_TOT", 3206, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field MC33_T_BYPASS = Field.create("MC33_T_BYPASS", 3208, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field MC33_T_HOLD_OFF = Field.create("MC33_T_HOLD_OFF", 3210, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field MC33_T_HOLD_TOT = Field.create("MC33_T_HOLD_TOT", 3212, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TCUUPSHIFTBUTTONPINMODE = Field.create("TCUUPSHIFTBUTTONPINMODE", 3214, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCUDOWNSHIFTBUTTONPINMODE = Field.create("TCUDOWNSHIFTBUTTONPINMODE", 3215, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ACSWITCHMODE = Field.create("ACSWITCHMODE", 3216, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID_MODE1 = Field.create("TCU_SOLENOID_MODE1", 3217, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID_MODE2 = Field.create("TCU_SOLENOID_MODE2", 3218, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID_MODE3 = Field.create("TCU_SOLENOID_MODE3", 3219, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID_MODE4 = Field.create("TCU_SOLENOID_MODE4", 3220, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID_MODE5 = Field.create("TCU_SOLENOID_MODE5", 3221, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_SOLENOID_MODE6 = Field.create("TCU_SOLENOID_MODE6", 3222, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field KNOCKBASENOISE = Field.create("KNOCKBASENOISE", 3223, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_3239 = Field.create("ALIGNMENTFILL_AT_3239", 3239, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM1 = Field.create("TRIGGERGAPOVERRIDEFROM1", 3240, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM2 = Field.create("TRIGGERGAPOVERRIDEFROM2", 3244, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM3 = Field.create("TRIGGERGAPOVERRIDEFROM3", 3248, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM4 = Field.create("TRIGGERGAPOVERRIDEFROM4", 3252, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM5 = Field.create("TRIGGERGAPOVERRIDEFROM5", 3256, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM6 = Field.create("TRIGGERGAPOVERRIDEFROM6", 3260, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM7 = Field.create("TRIGGERGAPOVERRIDEFROM7", 3264, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM8 = Field.create("TRIGGERGAPOVERRIDEFROM8", 3268, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM9 = Field.create("TRIGGERGAPOVERRIDEFROM9", 3272, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM10 = Field.create("TRIGGERGAPOVERRIDEFROM10", 3276, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM11 = Field.create("TRIGGERGAPOVERRIDEFROM11", 3280, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM12 = Field.create("TRIGGERGAPOVERRIDEFROM12", 3284, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM13 = Field.create("TRIGGERGAPOVERRIDEFROM13", 3288, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM14 = Field.create("TRIGGERGAPOVERRIDEFROM14", 3292, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM15 = Field.create("TRIGGERGAPOVERRIDEFROM15", 3296, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM16 = Field.create("TRIGGERGAPOVERRIDEFROM16", 3300, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM17 = Field.create("TRIGGERGAPOVERRIDEFROM17", 3304, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDEFROM18 = Field.create("TRIGGERGAPOVERRIDEFROM18", 3308, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO1 = Field.create("TRIGGERGAPOVERRIDETO1", 3312, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO2 = Field.create("TRIGGERGAPOVERRIDETO2", 3316, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO3 = Field.create("TRIGGERGAPOVERRIDETO3", 3320, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO4 = Field.create("TRIGGERGAPOVERRIDETO4", 3324, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO5 = Field.create("TRIGGERGAPOVERRIDETO5", 3328, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO6 = Field.create("TRIGGERGAPOVERRIDETO6", 3332, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO7 = Field.create("TRIGGERGAPOVERRIDETO7", 3336, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO8 = Field.create("TRIGGERGAPOVERRIDETO8", 3340, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO9 = Field.create("TRIGGERGAPOVERRIDETO9", 3344, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO10 = Field.create("TRIGGERGAPOVERRIDETO10", 3348, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO11 = Field.create("TRIGGERGAPOVERRIDETO11", 3352, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO12 = Field.create("TRIGGERGAPOVERRIDETO12", 3356, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO13 = Field.create("TRIGGERGAPOVERRIDETO13", 3360, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO14 = Field.create("TRIGGERGAPOVERRIDETO14", 3364, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO15 = Field.create("TRIGGERGAPOVERRIDETO15", 3368, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO16 = Field.create("TRIGGERGAPOVERRIDETO16", 3372, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO17 = Field.create("TRIGGERGAPOVERRIDETO17", 3376, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERGAPOVERRIDETO18 = Field.create("TRIGGERGAPOVERRIDETO18", 3380, FieldType.FLOAT).setBaseOffset(0); - public static final Field MAXCAMPHASERESOLVERPM = Field.create("MAXCAMPHASERESOLVERPM", 3384, FieldType.INT8).setScale(50.0).setBaseOffset(0); - public static final Field DFCODELAY = Field.create("DFCODELAY", 3385, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field ACDELAY = Field.create("ACDELAY", 3386, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_3387 = Field.create("ALIGNMENTFILL_AT_3387", 3387, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FORDINJECTORSMALLPULSEBREAKPOINT = Field.create("FORDINJECTORSMALLPULSEBREAKPOINT", 3388, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field TPSTSPCORRVALUES = Field.create("TPSTSPCORRVALUES", 3390, FieldType.INT8).setScale(0.02).setBaseOffset(0); - public static final Field ETBJAMINTEGRATORLIMIT = Field.create("ETBJAMINTEGRATORLIMIT", 3394, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HPFPCAMLOBES = Field.create("HPFPCAMLOBES", 3395, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM1_LOADAXIS = Field.create("GPPWM1_LOADAXIS", 2664, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM1_RPMAXIS = Field.create("GPPWM1_RPMAXIS", 2665, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM1_LOADBINS = Field.create("GPPWM1_LOADBINS", 2666, FieldType.INT16).setScale(0.5).setBaseOffset(0); + public static final Field GPPWM1_RPMBINS = Field.create("GPPWM1_RPMBINS", 2682, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM1_TABLE = Field.create("GPPWM1_TABLE", 2698, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field GPPWM1_ALIGNMENTFILL_AT_106 = Field.create("GPPWM1_ALIGNMENTFILL_AT_106", 2762, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM2_PIN = Field.create("GPPWM2_PIN", 2764, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM2_DUTYIFERROR = Field.create("GPPWM2_DUTYIFERROR", 2766, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM2_ALIGNMENTFILL_AT_3 = Field.create("GPPWM2_ALIGNMENTFILL_AT_3", 2767, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM2_PWMFREQUENCY = Field.create("GPPWM2_PWMFREQUENCY", 2768, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM2_ONABOVEDUTY = Field.create("GPPWM2_ONABOVEDUTY", 2770, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM2_OFFBELOWDUTY = Field.create("GPPWM2_OFFBELOWDUTY", 2771, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM2_LOADAXIS = Field.create("GPPWM2_LOADAXIS", 2772, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM2_RPMAXIS = Field.create("GPPWM2_RPMAXIS", 2773, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM2_LOADBINS = Field.create("GPPWM2_LOADBINS", 2774, FieldType.INT16).setScale(0.5).setBaseOffset(0); + public static final Field GPPWM2_RPMBINS = Field.create("GPPWM2_RPMBINS", 2790, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM2_TABLE = Field.create("GPPWM2_TABLE", 2806, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field GPPWM2_ALIGNMENTFILL_AT_106 = Field.create("GPPWM2_ALIGNMENTFILL_AT_106", 2870, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM3_PIN = Field.create("GPPWM3_PIN", 2872, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM3_DUTYIFERROR = Field.create("GPPWM3_DUTYIFERROR", 2874, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM3_ALIGNMENTFILL_AT_3 = Field.create("GPPWM3_ALIGNMENTFILL_AT_3", 2875, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM3_PWMFREQUENCY = Field.create("GPPWM3_PWMFREQUENCY", 2876, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM3_ONABOVEDUTY = Field.create("GPPWM3_ONABOVEDUTY", 2878, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM3_OFFBELOWDUTY = Field.create("GPPWM3_OFFBELOWDUTY", 2879, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM3_LOADAXIS = Field.create("GPPWM3_LOADAXIS", 2880, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM3_RPMAXIS = Field.create("GPPWM3_RPMAXIS", 2881, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM3_LOADBINS = Field.create("GPPWM3_LOADBINS", 2882, FieldType.INT16).setScale(0.5).setBaseOffset(0); + public static final Field GPPWM3_RPMBINS = Field.create("GPPWM3_RPMBINS", 2898, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM3_TABLE = Field.create("GPPWM3_TABLE", 2914, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field GPPWM3_ALIGNMENTFILL_AT_106 = Field.create("GPPWM3_ALIGNMENTFILL_AT_106", 2978, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM4_PIN = Field.create("GPPWM4_PIN", 2980, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM4_DUTYIFERROR = Field.create("GPPWM4_DUTYIFERROR", 2982, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM4_ALIGNMENTFILL_AT_3 = Field.create("GPPWM4_ALIGNMENTFILL_AT_3", 2983, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM4_PWMFREQUENCY = Field.create("GPPWM4_PWMFREQUENCY", 2984, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM4_ONABOVEDUTY = Field.create("GPPWM4_ONABOVEDUTY", 2986, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM4_OFFBELOWDUTY = Field.create("GPPWM4_OFFBELOWDUTY", 2987, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM4_LOADAXIS = Field.create("GPPWM4_LOADAXIS", 2988, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM4_RPMAXIS = Field.create("GPPWM4_RPMAXIS", 2989, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM4_LOADBINS = Field.create("GPPWM4_LOADBINS", 2990, FieldType.INT16).setScale(0.5).setBaseOffset(0); + public static final Field GPPWM4_RPMBINS = Field.create("GPPWM4_RPMBINS", 3006, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field GPPWM4_TABLE = Field.create("GPPWM4_TABLE", 3022, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field GPPWM4_ALIGNMENTFILL_AT_106 = Field.create("GPPWM4_ALIGNMENTFILL_AT_106", 3086, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MC33_I_BOOST = Field.create("MC33_I_BOOST", 3088, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field MC33_I_PEAK = Field.create("MC33_I_PEAK", 3090, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field MC33_I_HOLD = Field.create("MC33_I_HOLD", 3092, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field MC33_T_MAX_BOOST = Field.create("MC33_T_MAX_BOOST", 3094, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field MC33_T_PEAK_OFF = Field.create("MC33_T_PEAK_OFF", 3096, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field MC33_T_PEAK_TOT = Field.create("MC33_T_PEAK_TOT", 3098, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field MC33_T_BYPASS = Field.create("MC33_T_BYPASS", 3100, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field MC33_T_HOLD_OFF = Field.create("MC33_T_HOLD_OFF", 3102, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field MC33_T_HOLD_TOT = Field.create("MC33_T_HOLD_TOT", 3104, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TCUUPSHIFTBUTTONPINMODE = Field.create("TCUUPSHIFTBUTTONPINMODE", 3106, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCUDOWNSHIFTBUTTONPINMODE = Field.create("TCUDOWNSHIFTBUTTONPINMODE", 3107, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ACSWITCHMODE = Field.create("ACSWITCHMODE", 3108, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID_MODE1 = Field.create("TCU_SOLENOID_MODE1", 3109, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID_MODE2 = Field.create("TCU_SOLENOID_MODE2", 3110, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID_MODE3 = Field.create("TCU_SOLENOID_MODE3", 3111, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID_MODE4 = Field.create("TCU_SOLENOID_MODE4", 3112, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID_MODE5 = Field.create("TCU_SOLENOID_MODE5", 3113, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_SOLENOID_MODE6 = Field.create("TCU_SOLENOID_MODE6", 3114, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3115 = Field.create("ALIGNMENTFILL_AT_3115", 3115, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM1 = Field.create("TRIGGERGAPOVERRIDEFROM1", 3116, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM2 = Field.create("TRIGGERGAPOVERRIDEFROM2", 3120, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM3 = Field.create("TRIGGERGAPOVERRIDEFROM3", 3124, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM4 = Field.create("TRIGGERGAPOVERRIDEFROM4", 3128, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM5 = Field.create("TRIGGERGAPOVERRIDEFROM5", 3132, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM6 = Field.create("TRIGGERGAPOVERRIDEFROM6", 3136, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM7 = Field.create("TRIGGERGAPOVERRIDEFROM7", 3140, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM8 = Field.create("TRIGGERGAPOVERRIDEFROM8", 3144, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM9 = Field.create("TRIGGERGAPOVERRIDEFROM9", 3148, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM10 = Field.create("TRIGGERGAPOVERRIDEFROM10", 3152, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM11 = Field.create("TRIGGERGAPOVERRIDEFROM11", 3156, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM12 = Field.create("TRIGGERGAPOVERRIDEFROM12", 3160, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM13 = Field.create("TRIGGERGAPOVERRIDEFROM13", 3164, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM14 = Field.create("TRIGGERGAPOVERRIDEFROM14", 3168, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM15 = Field.create("TRIGGERGAPOVERRIDEFROM15", 3172, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM16 = Field.create("TRIGGERGAPOVERRIDEFROM16", 3176, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM17 = Field.create("TRIGGERGAPOVERRIDEFROM17", 3180, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDEFROM18 = Field.create("TRIGGERGAPOVERRIDEFROM18", 3184, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO1 = Field.create("TRIGGERGAPOVERRIDETO1", 3188, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO2 = Field.create("TRIGGERGAPOVERRIDETO2", 3192, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO3 = Field.create("TRIGGERGAPOVERRIDETO3", 3196, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO4 = Field.create("TRIGGERGAPOVERRIDETO4", 3200, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO5 = Field.create("TRIGGERGAPOVERRIDETO5", 3204, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO6 = Field.create("TRIGGERGAPOVERRIDETO6", 3208, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO7 = Field.create("TRIGGERGAPOVERRIDETO7", 3212, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO8 = Field.create("TRIGGERGAPOVERRIDETO8", 3216, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO9 = Field.create("TRIGGERGAPOVERRIDETO9", 3220, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO10 = Field.create("TRIGGERGAPOVERRIDETO10", 3224, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO11 = Field.create("TRIGGERGAPOVERRIDETO11", 3228, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO12 = Field.create("TRIGGERGAPOVERRIDETO12", 3232, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO13 = Field.create("TRIGGERGAPOVERRIDETO13", 3236, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO14 = Field.create("TRIGGERGAPOVERRIDETO14", 3240, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO15 = Field.create("TRIGGERGAPOVERRIDETO15", 3244, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO16 = Field.create("TRIGGERGAPOVERRIDETO16", 3248, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO17 = Field.create("TRIGGERGAPOVERRIDETO17", 3252, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERGAPOVERRIDETO18 = Field.create("TRIGGERGAPOVERRIDETO18", 3256, FieldType.FLOAT).setBaseOffset(0); + public static final Field MAXCAMPHASERESOLVERPM = Field.create("MAXCAMPHASERESOLVERPM", 3260, FieldType.INT8).setScale(50.0).setBaseOffset(0); + public static final Field DFCODELAY = Field.create("DFCODELAY", 3261, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field ACDELAY = Field.create("ACDELAY", 3262, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final String[] tChargeMode_e = {"RPM+TPS (Default)", "Air Mass Interpolation", "Table"}; + public static final Field TCHARGEMODE = Field.create("TCHARGEMODE", 3263, FieldType.INT8, tChargeMode_e).setScale(1.0).setBaseOffset(0); + public static final Field FORDINJECTORSMALLPULSEBREAKPOINT = Field.create("FORDINJECTORSMALLPULSEBREAKPOINT", 3264, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field ETBJAMINTEGRATORLIMIT = Field.create("ETBJAMINTEGRATORLIMIT", 3266, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HPFPCAMLOBES = Field.create("HPFPCAMLOBES", 3267, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final String[] hpfp_cam_e = {"NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2"}; - public static final Field HPFPCAM = Field.create("HPFPCAM", 3396, FieldType.INT8, hpfp_cam_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXILIARYSETTING1 = Field.create("AUXILIARYSETTING1", 3397, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HPFPMINANGLE = Field.create("HPFPMINANGLE", 3398, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_3399 = Field.create("ALIGNMENTFILL_AT_3399", 3399, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HPFPPUMPVOLUME = Field.create("HPFPPUMPVOLUME", 3400, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field HPFPACTIVATIONANGLE = Field.create("HPFPACTIVATIONANGLE", 3402, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ISSFILTERRECIPROCAL = Field.create("ISSFILTERRECIPROCAL", 3403, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HPFPPIDP = Field.create("HPFPPIDP", 3404, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field HPFPPIDI = Field.create("HPFPPIDI", 3406, FieldType.INT16).setScale(1.0E-5).setBaseOffset(0); - public static final Field HPFPTARGETDECAY = Field.create("HPFPTARGETDECAY", 3408, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field HPFPLOBEPROFILEQUANTITYBINS = Field.create("HPFPLOBEPROFILEQUANTITYBINS", 3410, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field HPFPLOBEPROFILEANGLE = Field.create("HPFPLOBEPROFILEANGLE", 3426, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field HPFPDEADTIMEVOLTSBINS = Field.create("HPFPDEADTIMEVOLTSBINS", 3442, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HPFPDEADTIMEMS = Field.create("HPFPDEADTIMEMS", 3450, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field HPFPTARGET = Field.create("HPFPTARGET", 3466, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field HPFPTARGETLOADBINS = Field.create("HPFPTARGETLOADBINS", 3666, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field HPFPTARGETRPMBINS = Field.create("HPFPTARGETRPMBINS", 3686, FieldType.INT8).setScale(50.0).setBaseOffset(0); - public static final Field HPFPCOMPENSATION = Field.create("HPFPCOMPENSATION", 3696, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HPFPCOMPENSATIONLOADBINS = Field.create("HPFPCOMPENSATIONLOADBINS", 3796, FieldType.INT16).setScale(0.001).setBaseOffset(0); - public static final Field HPFPCOMPENSATIONRPMBINS = Field.create("HPFPCOMPENSATIONRPMBINS", 3816, FieldType.INT8).setScale(50.0).setBaseOffset(0); - public static final Field STEPPER_RAW_OUTPUT1 = Field.create("STEPPER_RAW_OUTPUT1", 3826, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field STEPPER_RAW_OUTPUT2 = Field.create("STEPPER_RAW_OUTPUT2", 3828, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field STEPPER_RAW_OUTPUT3 = Field.create("STEPPER_RAW_OUTPUT3", 3830, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field STEPPER_RAW_OUTPUT4 = Field.create("STEPPER_RAW_OUTPUT4", 3832, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field GEARRATIO1 = Field.create("GEARRATIO1", 3834, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field GEARRATIO2 = Field.create("GEARRATIO2", 3836, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field GEARRATIO3 = Field.create("GEARRATIO3", 3838, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field GEARRATIO4 = Field.create("GEARRATIO4", 3840, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field GEARRATIO5 = Field.create("GEARRATIO5", 3842, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field GEARRATIO6 = Field.create("GEARRATIO6", 3844, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field GEARRATIO7 = Field.create("GEARRATIO7", 3846, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field GEARRATIO8 = Field.create("GEARRATIO8", 3848, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field GEARRATIO9 = Field.create("GEARRATIO9", 3850, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field GEARRATIO10 = Field.create("GEARRATIO10", 3852, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field VVTACTIVATIONDELAYMS = Field.create("VVTACTIVATIONDELAYMS", 3854, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field WWCLTBINS = Field.create("WWCLTBINS", 3856, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field WWTAUCLTVALUES = Field.create("WWTAUCLTVALUES", 3864, FieldType.INT8).setScale(0.01).setBaseOffset(0); - public static final Field WWBETACLTVALUES = Field.create("WWBETACLTVALUES", 3872, FieldType.INT8).setScale(0.01).setBaseOffset(0); - public static final Field WWMAPBINS = Field.create("WWMAPBINS", 3880, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field WWTAUMAPVALUES = Field.create("WWTAUMAPVALUES", 3888, FieldType.INT8).setScale(0.01).setBaseOffset(0); - public static final Field WWBETAMAPVALUES = Field.create("WWBETAMAPVALUES", 3896, FieldType.INT8).setScale(0.01).setBaseOffset(0); - public static final Field TORQUETABLE = Field.create("TORQUETABLE", 3904, FieldType.INT8).setScale(10.0).setBaseOffset(0); - public static final Field TORQUERPMBINS = Field.create("TORQUERPMBINS", 3940, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TORQUELOADBINS = Field.create("TORQUELOADBINS", 3952, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field GEARCONTROLLERMODE = Field.create("GEARCONTROLLERMODE", 3964, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TRANSMISSIONCONTROLLERMODE = Field.create("TRANSMISSIONCONTROLLERMODE", 3965, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ACRDISABLEPHASE = Field.create("ACRDISABLEPHASE", 3966, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field AUXLINEAR1_HWCHANNEL = Field.create("AUXLINEAR1_HWCHANNEL", 3968, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXLINEAR1_ALIGNMENTFILL_AT_1 = Field.create("AUXLINEAR1_ALIGNMENTFILL_AT_1", 3969, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field AUXLINEAR1_V1 = Field.create("AUXLINEAR1_V1", 3972, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXLINEAR1_VALUE1 = Field.create("AUXLINEAR1_VALUE1", 3976, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXLINEAR1_V2 = Field.create("AUXLINEAR1_V2", 3980, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXLINEAR1_VALUE2 = Field.create("AUXLINEAR1_VALUE2", 3984, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXLINEAR2_HWCHANNEL = Field.create("AUXLINEAR2_HWCHANNEL", 3988, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AUXLINEAR2_ALIGNMENTFILL_AT_1 = Field.create("AUXLINEAR2_ALIGNMENTFILL_AT_1", 3989, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field AUXLINEAR2_V1 = Field.create("AUXLINEAR2_V1", 3992, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXLINEAR2_VALUE1 = Field.create("AUXLINEAR2_VALUE1", 3996, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXLINEAR2_V2 = Field.create("AUXLINEAR2_V2", 4000, FieldType.FLOAT).setBaseOffset(0); - public static final Field AUXLINEAR2_VALUE2 = Field.create("AUXLINEAR2_VALUE2", 4004, FieldType.FLOAT).setBaseOffset(0); - public static final Field TCU_TCC_ONOFF_SOLENOID = Field.create("TCU_TCC_ONOFF_SOLENOID", 4008, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_TCC_ONOFF_SOLENOID_MODE = Field.create("TCU_TCC_ONOFF_SOLENOID_MODE", 4010, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_4011 = Field.create("ALIGNMENTFILL_AT_4011", 4011, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_TCC_PWM_SOLENOID = Field.create("TCU_TCC_PWM_SOLENOID", 4012, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_TCC_PWM_SOLENOID_MODE = Field.create("TCU_TCC_PWM_SOLENOID_MODE", 4014, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_4015 = Field.create("ALIGNMENTFILL_AT_4015", 4015, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_TCC_PWM_SOLENOID_FREQ = Field.create("TCU_TCC_PWM_SOLENOID_FREQ", 4016, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PC_SOLENOID_PIN = Field.create("TCU_PC_SOLENOID_PIN", 4018, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PC_SOLENOID_PIN_MODE = Field.create("TCU_PC_SOLENOID_PIN_MODE", 4020, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_4021 = Field.create("ALIGNMENTFILL_AT_4021", 4021, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PC_SOLENOID_FREQ = Field.create("TCU_PC_SOLENOID_FREQ", 4022, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TCU_32_SOLENOID_PIN = Field.create("TCU_32_SOLENOID_PIN", 4024, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_32_SOLENOID_PIN_MODE = Field.create("TCU_32_SOLENOID_PIN_MODE", 4026, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_4027 = Field.create("ALIGNMENTFILL_AT_4027", 4027, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_32_SOLENOID_FREQ = Field.create("TCU_32_SOLENOID_FREQ", 4028, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ACRPIN2 = Field.create("ACRPIN2", 4030, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field ETBMINIMUMPOSITION = Field.create("ETBMINIMUMPOSITION", 4032, FieldType.FLOAT).setBaseOffset(0); - public static final Field TUNEHIDINGKEY = Field.create("TUNEHIDINGKEY", 4036, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VINNUMBER = Field.create("VINNUMBER", 4038, 17, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_4055 = Field.create("ALIGNMENTFILL_AT_4055", 4055, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field HIGHSPEEDOFFSETS = Field.create("HIGHSPEEDOFFSETS", 4056, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field UNUSED3124141 = Field.create("UNUSED3124141", 4120, FieldType.FLOAT).setBaseOffset(0); + public static final Field HPFPCAM = Field.create("HPFPCAM", 3268, FieldType.INT8, hpfp_cam_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXILIARYSETTING1 = Field.create("AUXILIARYSETTING1", 3269, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HPFPMINANGLE = Field.create("HPFPMINANGLE", 3270, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3271 = Field.create("ALIGNMENTFILL_AT_3271", 3271, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HPFPPUMPVOLUME = Field.create("HPFPPUMPVOLUME", 3272, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field HPFPACTIVATIONANGLE = Field.create("HPFPACTIVATIONANGLE", 3274, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ISSFILTERRECIPROCAL = Field.create("ISSFILTERRECIPROCAL", 3275, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HPFPPIDP = Field.create("HPFPPIDP", 3276, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field HPFPPIDI = Field.create("HPFPPIDI", 3278, FieldType.INT16).setScale(1.0E-5).setBaseOffset(0); + public static final Field HPFPTARGETDECAY = Field.create("HPFPTARGETDECAY", 3280, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field STEPPER_RAW_OUTPUT1 = Field.create("STEPPER_RAW_OUTPUT1", 3282, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field STEPPER_RAW_OUTPUT2 = Field.create("STEPPER_RAW_OUTPUT2", 3284, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field STEPPER_RAW_OUTPUT3 = Field.create("STEPPER_RAW_OUTPUT3", 3286, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field STEPPER_RAW_OUTPUT4 = Field.create("STEPPER_RAW_OUTPUT4", 3288, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field GEARRATIO1 = Field.create("GEARRATIO1", 3290, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field GEARRATIO2 = Field.create("GEARRATIO2", 3292, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field GEARRATIO3 = Field.create("GEARRATIO3", 3294, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field GEARRATIO4 = Field.create("GEARRATIO4", 3296, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field GEARRATIO5 = Field.create("GEARRATIO5", 3298, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field GEARRATIO6 = Field.create("GEARRATIO6", 3300, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field GEARRATIO7 = Field.create("GEARRATIO7", 3302, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field GEARRATIO8 = Field.create("GEARRATIO8", 3304, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field GEARRATIO9 = Field.create("GEARRATIO9", 3306, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field GEARRATIO10 = Field.create("GEARRATIO10", 3308, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field VVTACTIVATIONDELAYMS = Field.create("VVTACTIVATIONDELAYMS", 3310, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TORQUETABLE = Field.create("TORQUETABLE", 3312, FieldType.INT8).setScale(10.0).setBaseOffset(0); + public static final Field TORQUERPMBINS = Field.create("TORQUERPMBINS", 3348, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TORQUELOADBINS = Field.create("TORQUELOADBINS", 3360, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field GEARCONTROLLERMODE = Field.create("GEARCONTROLLERMODE", 3372, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TRANSMISSIONCONTROLLERMODE = Field.create("TRANSMISSIONCONTROLLERMODE", 3373, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ACRDISABLEPHASE = Field.create("ACRDISABLEPHASE", 3374, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field AUXLINEAR1_HWCHANNEL = Field.create("AUXLINEAR1_HWCHANNEL", 3376, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXLINEAR1_ALIGNMENTFILL_AT_1 = Field.create("AUXLINEAR1_ALIGNMENTFILL_AT_1", 3377, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field AUXLINEAR1_V1 = Field.create("AUXLINEAR1_V1", 3380, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXLINEAR1_VALUE1 = Field.create("AUXLINEAR1_VALUE1", 3384, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXLINEAR1_V2 = Field.create("AUXLINEAR1_V2", 3388, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXLINEAR1_VALUE2 = Field.create("AUXLINEAR1_VALUE2", 3392, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXLINEAR2_HWCHANNEL = Field.create("AUXLINEAR2_HWCHANNEL", 3396, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AUXLINEAR2_ALIGNMENTFILL_AT_1 = Field.create("AUXLINEAR2_ALIGNMENTFILL_AT_1", 3397, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field AUXLINEAR2_V1 = Field.create("AUXLINEAR2_V1", 3400, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXLINEAR2_VALUE1 = Field.create("AUXLINEAR2_VALUE1", 3404, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXLINEAR2_V2 = Field.create("AUXLINEAR2_V2", 3408, FieldType.FLOAT).setBaseOffset(0); + public static final Field AUXLINEAR2_VALUE2 = Field.create("AUXLINEAR2_VALUE2", 3412, FieldType.FLOAT).setBaseOffset(0); + public static final Field TCU_TCC_ONOFF_SOLENOID = Field.create("TCU_TCC_ONOFF_SOLENOID", 3416, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_TCC_ONOFF_SOLENOID_MODE = Field.create("TCU_TCC_ONOFF_SOLENOID_MODE", 3418, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3419 = Field.create("ALIGNMENTFILL_AT_3419", 3419, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_TCC_PWM_SOLENOID = Field.create("TCU_TCC_PWM_SOLENOID", 3420, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_TCC_PWM_SOLENOID_MODE = Field.create("TCU_TCC_PWM_SOLENOID_MODE", 3422, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3423 = Field.create("ALIGNMENTFILL_AT_3423", 3423, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_TCC_PWM_SOLENOID_FREQ = Field.create("TCU_TCC_PWM_SOLENOID_FREQ", 3424, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PC_SOLENOID_PIN = Field.create("TCU_PC_SOLENOID_PIN", 3426, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PC_SOLENOID_PIN_MODE = Field.create("TCU_PC_SOLENOID_PIN_MODE", 3428, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3429 = Field.create("ALIGNMENTFILL_AT_3429", 3429, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PC_SOLENOID_FREQ = Field.create("TCU_PC_SOLENOID_FREQ", 3430, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TCU_32_SOLENOID_PIN = Field.create("TCU_32_SOLENOID_PIN", 3432, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_32_SOLENOID_PIN_MODE = Field.create("TCU_32_SOLENOID_PIN_MODE", 3434, FieldType.INT8, pin_output_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3435 = Field.create("ALIGNMENTFILL_AT_3435", 3435, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_32_SOLENOID_FREQ = Field.create("TCU_32_SOLENOID_FREQ", 3436, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ACRPIN2 = Field.create("ACRPIN2", 3438, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field ETBMINIMUMPOSITION = Field.create("ETBMINIMUMPOSITION", 3440, FieldType.FLOAT).setBaseOffset(0); + public static final Field TUNEHIDINGKEY = Field.create("TUNEHIDINGKEY", 3444, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VINNUMBER = Field.create("VINNUMBER", 3446, 17, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3463 = Field.create("ALIGNMENTFILL_AT_3463", 3463, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HIGHSPEEDOFFSETS = Field.create("HIGHSPEEDOFFSETS", 3464, FieldType.INT16).setScale(1.0).setBaseOffset(0); public static final String[] fuel_pressure_sensor_mode_e = {"Absolute", "Gauge", "Differential", "INVALID"}; - public static final Field FUELPRESSURESENSORMODE = Field.create("FUELPRESSURESENSORMODE", 4124, FieldType.INT8, fuel_pressure_sensor_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_4125 = Field.create("ALIGNMENTFILL_AT_4125", 4125, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINS1 = Field.create("LUADIGITALINPUTPINS1", 4126, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINS2 = Field.create("LUADIGITALINPUTPINS2", 4128, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINS3 = Field.create("LUADIGITALINPUTPINS3", 4130, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINS4 = Field.create("LUADIGITALINPUTPINS4", 4132, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINS5 = Field.create("LUADIGITALINPUTPINS5", 4134, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINS6 = Field.create("LUADIGITALINPUTPINS6", 4136, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINS7 = Field.create("LUADIGITALINPUTPINS7", 4138, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINS8 = Field.create("LUADIGITALINPUTPINS8", 4140, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TPSTSPCORRVALUESBINS = Field.create("TPSTSPCORRVALUESBINS", 4142, FieldType.INT8).setScale(50.0).setBaseOffset(0); - public static final Field ALSMINRPM = Field.create("ALSMINRPM", 4146, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALSMAXRPM = Field.create("ALSMAXRPM", 4148, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALSMAXDURATION = Field.create("ALSMAXDURATION", 4150, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALSMINCLT = Field.create("ALSMINCLT", 4152, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALSMAXCLT = Field.create("ALSMAXCLT", 4153, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALSMINTIMEBETWEEN = Field.create("ALSMINTIMEBETWEEN", 4154, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALSETBPOSITION = Field.create("ALSETBPOSITION", 4155, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ACRELAYALTERNATORDUTYADDER = Field.create("ACRELAYALTERNATORDUTYADDER", 4156, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FUELPRESSURESENSORMODE = Field.create("FUELPRESSURESENSORMODE", 3528, FieldType.INT8, fuel_pressure_sensor_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3529 = Field.create("ALIGNMENTFILL_AT_3529", 3529, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINS1 = Field.create("LUADIGITALINPUTPINS1", 3530, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINS2 = Field.create("LUADIGITALINPUTPINS2", 3532, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINS3 = Field.create("LUADIGITALINPUTPINS3", 3534, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINS4 = Field.create("LUADIGITALINPUTPINS4", 3536, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINS5 = Field.create("LUADIGITALINPUTPINS5", 3538, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINS6 = Field.create("LUADIGITALINPUTPINS6", 3540, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINS7 = Field.create("LUADIGITALINPUTPINS7", 3542, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINS8 = Field.create("LUADIGITALINPUTPINS8", 3544, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field ALSMINRPM = Field.create("ALSMINRPM", 3546, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALSMAXRPM = Field.create("ALSMAXRPM", 3548, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALSMAXDURATION = Field.create("ALSMAXDURATION", 3550, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALSMINCLT = Field.create("ALSMINCLT", 3552, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALSMAXCLT = Field.create("ALSMAXCLT", 3553, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALSMINTIMEBETWEEN = Field.create("ALSMINTIMEBETWEEN", 3554, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALSETBPOSITION = Field.create("ALSETBPOSITION", 3555, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ACRELAYALTERNATORDUTYADDER = Field.create("ACRELAYALTERNATORDUTYADDER", 3556, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final String[] SentEtbType = {"None", "GM type 1", "Ford type 1", "Custom"}; - public static final Field SENTETBTYPE = Field.create("SENTETBTYPE", 4157, FieldType.INT8, SentEtbType).setScale(1.0).setBaseOffset(0); - public static final Field CUSTOMSENTTPSMIN = Field.create("CUSTOMSENTTPSMIN", 4158, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALSIDLEADD = Field.create("ALSIDLEADD", 4160, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field ALSETBADD = Field.create("ALSETBADD", 4164, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field ALSSKIPRATIO = Field.create("ALSSKIPRATIO", 4168, FieldType.FLOAT).setBaseOffset(0); - public static final Field ALSMAXDRIVERTHROTTLEINTENT = Field.create("ALSMAXDRIVERTHROTTLEINTENT", 4172, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALSACTIVATEPINMODE = Field.create("ALSACTIVATEPINMODE", 4173, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TPSSECONDARYMAXIMUM = Field.create("TPSSECONDARYMAXIMUM", 4174, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field PPSSECONDARYMAXIMUM = Field.create("PPSSECONDARYMAXIMUM", 4175, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINMODES1 = Field.create("LUADIGITALINPUTPINMODES1", 4176, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINMODES2 = Field.create("LUADIGITALINPUTPINMODES2", 4177, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINMODES3 = Field.create("LUADIGITALINPUTPINMODES3", 4178, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINMODES4 = Field.create("LUADIGITALINPUTPINMODES4", 4179, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINMODES5 = Field.create("LUADIGITALINPUTPINMODES5", 4180, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINMODES6 = Field.create("LUADIGITALINPUTPINMODES6", 4181, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINMODES7 = Field.create("LUADIGITALINPUTPINMODES7", 4182, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field LUADIGITALINPUTPINMODES8 = Field.create("LUADIGITALINPUTPINMODES8", 4183, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field CUSTOMSENTTPSMAX = Field.create("CUSTOMSENTTPSMAX", 4184, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field KLINEBAUDRATE = Field.create("KLINEBAUDRATE", 4186, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SENTETBTYPE = Field.create("SENTETBTYPE", 3557, FieldType.INT8, SentEtbType).setScale(1.0).setBaseOffset(0); + public static final Field CUSTOMSENTTPSMIN = Field.create("CUSTOMSENTTPSMIN", 3558, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALSIDLEADD = Field.create("ALSIDLEADD", 3560, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field ALSETBADD = Field.create("ALSETBADD", 3564, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field ALSSKIPRATIO = Field.create("ALSSKIPRATIO", 3568, FieldType.FLOAT).setBaseOffset(0); + public static final Field ALSMAXDRIVERTHROTTLEINTENT = Field.create("ALSMAXDRIVERTHROTTLEINTENT", 3572, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALSACTIVATEPINMODE = Field.create("ALSACTIVATEPINMODE", 3573, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TPSSECONDARYMAXIMUM = Field.create("TPSSECONDARYMAXIMUM", 3574, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field PPSSECONDARYMAXIMUM = Field.create("PPSSECONDARYMAXIMUM", 3575, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINMODES1 = Field.create("LUADIGITALINPUTPINMODES1", 3576, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINMODES2 = Field.create("LUADIGITALINPUTPINMODES2", 3577, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINMODES3 = Field.create("LUADIGITALINPUTPINMODES3", 3578, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINMODES4 = Field.create("LUADIGITALINPUTPINMODES4", 3579, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINMODES5 = Field.create("LUADIGITALINPUTPINMODES5", 3580, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINMODES6 = Field.create("LUADIGITALINPUTPINMODES6", 3581, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINMODES7 = Field.create("LUADIGITALINPUTPINMODES7", 3582, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field LUADIGITALINPUTPINMODES8 = Field.create("LUADIGITALINPUTPINMODES8", 3583, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field CUSTOMSENTTPSMAX = Field.create("CUSTOMSENTTPSMAX", 3584, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field KLINEBAUDRATE = Field.create("KLINEBAUDRATE", 3586, FieldType.INT16).setScale(1.0).setBaseOffset(0); public static final String[] CanGpioType = {"None", "DRT protocol", "MS protocol"}; - public static final Field CANGPIOTYPE = Field.create("CANGPIOTYPE", 4188, FieldType.INT8, CanGpioType).setScale(1.0).setBaseOffset(0); + public static final Field CANGPIOTYPE = Field.create("CANGPIOTYPE", 3588, FieldType.INT8, CanGpioType).setScale(1.0).setBaseOffset(0); public static final String[] UiMode = {"Full", "Installation", "Tuning"}; - public static final Field UIMODE = Field.create("UIMODE", 4189, FieldType.INT8, UiMode).setScale(1.0).setBaseOffset(0); - public static final Field HPFPPEAKPOS = Field.create("HPFPPEAKPOS", 4190, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field KLINEPERIODUS = Field.create("KLINEPERIODUS", 4192, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field RPMSOFTLIMITWINDOWSIZE = Field.create("RPMSOFTLIMITWINDOWSIZE", 4194, FieldType.INT8).setScale(10.0).setBaseOffset(0); - public static final Field RPMSOFTLIMITTIMINGRETARD = Field.create("RPMSOFTLIMITTIMINGRETARD", 4195, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field RPMSOFTLIMITFUELADDED = Field.create("RPMSOFTLIMITFUELADDED", 4196, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field RPMHARDLIMITHYST = Field.create("RPMHARDLIMITHYST", 4197, FieldType.INT8).setScale(10.0).setBaseOffset(0); - public static final Field BENCHTESTOFFTIME = Field.create("BENCHTESTOFFTIME", 4198, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field BOOSTCUTPRESSUREHYST = Field.create("BOOSTCUTPRESSUREHYST", 4200, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field GEARBASEDOPENLOOPBOOSTADDER = Field.create("GEARBASEDOPENLOOPBOOSTADDER", 4201, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_4211 = Field.create("ALIGNMENTFILL_AT_4211", 4211, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field BENCHTESTCOUNT = Field.create("BENCHTESTCOUNT", 4212, FieldType.INT).setScale(1.0).setBaseOffset(0); - public static final Field IACBYTPSHOLDTIME = Field.create("IACBYTPSHOLDTIME", 4216, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field IACBYTPSDECAYTIME = Field.create("IACBYTPSDECAYTIME", 4217, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field TCU_RANGEINPUT1 = Field.create("TCU_RANGEINPUT1", 4218, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUT2 = Field.create("TCU_RANGEINPUT2", 4220, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUT3 = Field.create("TCU_RANGEINPUT3", 4222, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUT4 = Field.create("TCU_RANGEINPUT4", 4224, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUT5 = Field.create("TCU_RANGEINPUT5", 4226, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUT6 = Field.create("TCU_RANGEINPUT6", 4228, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUTMODE1 = Field.create("TCU_RANGEINPUTMODE1", 4230, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUTMODE2 = Field.create("TCU_RANGEINPUTMODE2", 4231, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUTMODE3 = Field.create("TCU_RANGEINPUTMODE3", 4232, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUTMODE4 = Field.create("TCU_RANGEINPUTMODE4", 4233, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUTMODE5 = Field.create("TCU_RANGEINPUTMODE5", 4234, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEINPUTMODE6 = Field.create("TCU_RANGEINPUTMODE6", 4235, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field CANVSSSCALING = Field.create("CANVSSSCALING", 4236, FieldType.INT16).setScale(1.0E-4).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_4238 = Field.create("ALIGNMENTFILL_AT_4238", 4238, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field OILTEMPSENSOR_TEMPC_1 = Field.create("OILTEMPSENSOR_TEMPC_1", 4240, FieldType.FLOAT).setBaseOffset(0); - public static final Field OILTEMPSENSOR_TEMPC_2 = Field.create("OILTEMPSENSOR_TEMPC_2", 4244, FieldType.FLOAT).setBaseOffset(0); - public static final Field OILTEMPSENSOR_TEMPC_3 = Field.create("OILTEMPSENSOR_TEMPC_3", 4248, FieldType.FLOAT).setBaseOffset(0); - public static final Field OILTEMPSENSOR_RESISTANCE_1 = Field.create("OILTEMPSENSOR_RESISTANCE_1", 4252, FieldType.FLOAT).setBaseOffset(0); - public static final Field OILTEMPSENSOR_RESISTANCE_2 = Field.create("OILTEMPSENSOR_RESISTANCE_2", 4256, FieldType.FLOAT).setBaseOffset(0); - public static final Field OILTEMPSENSOR_RESISTANCE_3 = Field.create("OILTEMPSENSOR_RESISTANCE_3", 4260, FieldType.FLOAT).setBaseOffset(0); - public static final Field OILTEMPSENSOR_BIAS_RESISTOR = Field.create("OILTEMPSENSOR_BIAS_RESISTOR", 4264, FieldType.FLOAT).setBaseOffset(0); - public static final Field OILTEMPSENSOR_ADCCHANNEL = Field.create("OILTEMPSENSOR_ADCCHANNEL", 4268, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field OILTEMPSENSOR_ALIGNMENTFILL_AT_29 = Field.create("OILTEMPSENSOR_ALIGNMENTFILL_AT_29", 4269, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FUELTEMPSENSOR_TEMPC_1 = Field.create("FUELTEMPSENSOR_TEMPC_1", 4272, FieldType.FLOAT).setBaseOffset(0); - public static final Field FUELTEMPSENSOR_TEMPC_2 = Field.create("FUELTEMPSENSOR_TEMPC_2", 4276, FieldType.FLOAT).setBaseOffset(0); - public static final Field FUELTEMPSENSOR_TEMPC_3 = Field.create("FUELTEMPSENSOR_TEMPC_3", 4280, FieldType.FLOAT).setBaseOffset(0); - public static final Field FUELTEMPSENSOR_RESISTANCE_1 = Field.create("FUELTEMPSENSOR_RESISTANCE_1", 4284, FieldType.FLOAT).setBaseOffset(0); - public static final Field FUELTEMPSENSOR_RESISTANCE_2 = Field.create("FUELTEMPSENSOR_RESISTANCE_2", 4288, FieldType.FLOAT).setBaseOffset(0); - public static final Field FUELTEMPSENSOR_RESISTANCE_3 = Field.create("FUELTEMPSENSOR_RESISTANCE_3", 4292, FieldType.FLOAT).setBaseOffset(0); - public static final Field FUELTEMPSENSOR_BIAS_RESISTOR = Field.create("FUELTEMPSENSOR_BIAS_RESISTOR", 4296, FieldType.FLOAT).setBaseOffset(0); - public static final Field FUELTEMPSENSOR_ADCCHANNEL = Field.create("FUELTEMPSENSOR_ADCCHANNEL", 4300, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field FUELTEMPSENSOR_ALIGNMENTFILL_AT_29 = Field.create("FUELTEMPSENSOR_ALIGNMENTFILL_AT_29", 4301, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field AMBIENTTEMPSENSOR_TEMPC_1 = Field.create("AMBIENTTEMPSENSOR_TEMPC_1", 4304, FieldType.FLOAT).setBaseOffset(0); - public static final Field AMBIENTTEMPSENSOR_TEMPC_2 = Field.create("AMBIENTTEMPSENSOR_TEMPC_2", 4308, FieldType.FLOAT).setBaseOffset(0); - public static final Field AMBIENTTEMPSENSOR_TEMPC_3 = Field.create("AMBIENTTEMPSENSOR_TEMPC_3", 4312, FieldType.FLOAT).setBaseOffset(0); - public static final Field AMBIENTTEMPSENSOR_RESISTANCE_1 = Field.create("AMBIENTTEMPSENSOR_RESISTANCE_1", 4316, FieldType.FLOAT).setBaseOffset(0); - public static final Field AMBIENTTEMPSENSOR_RESISTANCE_2 = Field.create("AMBIENTTEMPSENSOR_RESISTANCE_2", 4320, FieldType.FLOAT).setBaseOffset(0); - public static final Field AMBIENTTEMPSENSOR_RESISTANCE_3 = Field.create("AMBIENTTEMPSENSOR_RESISTANCE_3", 4324, FieldType.FLOAT).setBaseOffset(0); - public static final Field AMBIENTTEMPSENSOR_BIAS_RESISTOR = Field.create("AMBIENTTEMPSENSOR_BIAS_RESISTOR", 4328, FieldType.FLOAT).setBaseOffset(0); - public static final Field AMBIENTTEMPSENSOR_ADCCHANNEL = Field.create("AMBIENTTEMPSENSOR_ADCCHANNEL", 4332, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field AMBIENTTEMPSENSOR_ALIGNMENTFILL_AT_29 = Field.create("AMBIENTTEMPSENSOR_ALIGNMENTFILL_AT_29", 4333, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field COMPRESSORDISCHARGETEMPERATURE_TEMPC_1 = Field.create("COMPRESSORDISCHARGETEMPERATURE_TEMPC_1", 4336, FieldType.FLOAT).setBaseOffset(0); - public static final Field COMPRESSORDISCHARGETEMPERATURE_TEMPC_2 = Field.create("COMPRESSORDISCHARGETEMPERATURE_TEMPC_2", 4340, FieldType.FLOAT).setBaseOffset(0); - public static final Field COMPRESSORDISCHARGETEMPERATURE_TEMPC_3 = Field.create("COMPRESSORDISCHARGETEMPERATURE_TEMPC_3", 4344, FieldType.FLOAT).setBaseOffset(0); - public static final Field COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_1 = Field.create("COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_1", 4348, FieldType.FLOAT).setBaseOffset(0); - public static final Field COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_2 = Field.create("COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_2", 4352, FieldType.FLOAT).setBaseOffset(0); - public static final Field COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_3 = Field.create("COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_3", 4356, FieldType.FLOAT).setBaseOffset(0); - public static final Field COMPRESSORDISCHARGETEMPERATURE_BIAS_RESISTOR = Field.create("COMPRESSORDISCHARGETEMPERATURE_BIAS_RESISTOR", 4360, FieldType.FLOAT).setBaseOffset(0); - public static final Field COMPRESSORDISCHARGETEMPERATURE_ADCCHANNEL = Field.create("COMPRESSORDISCHARGETEMPERATURE_ADCCHANNEL", 4364, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field COMPRESSORDISCHARGETEMPERATURE_ALIGNMENTFILL_AT_29 = Field.create("COMPRESSORDISCHARGETEMPERATURE_ALIGNMENTFILL_AT_29", 4365, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field THROTTLEINLETPRESSURECHANNEL = Field.create("THROTTLEINLETPRESSURECHANNEL", 4368, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field COMPRESSORDISCHARGEPRESSURECHANNEL = Field.create("COMPRESSORDISCHARGEPRESSURECHANNEL", 4369, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field DACOUTPUTPINS1 = Field.create("DACOUTPUTPINS1", 4370, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field DACOUTPUTPINS2 = Field.create("DACOUTPUTPINS2", 4372, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPEEDOMETEROUTPUTPIN = Field.create("SPEEDOMETEROUTPUTPIN", 4374, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field SPEEDOMETERPULSEPERKM = Field.create("SPEEDOMETERPULSEPERKM", 4376, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field SIMULATORCAMPOSITION1 = Field.create("SIMULATORCAMPOSITION1", 4378, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field SIMULATORCAMPOSITION2 = Field.create("SIMULATORCAMPOSITION2", 4379, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field SIMULATORCAMPOSITION3 = Field.create("SIMULATORCAMPOSITION3", 4380, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field SIMULATORCAMPOSITION4 = Field.create("SIMULATORCAMPOSITION4", 4381, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IGNKEYADCCHANNEL = Field.create("IGNKEYADCCHANNEL", 4382, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI6MISOMODE = Field.create("SPI6MISOMODE", 4383, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field TRIGGERVVTGAPOVERRIDEFROM1 = Field.create("TRIGGERVVTGAPOVERRIDEFROM1", 4384, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERVVTGAPOVERRIDEFROM2 = Field.create("TRIGGERVVTGAPOVERRIDEFROM2", 4388, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERVVTGAPOVERRIDEFROM3 = Field.create("TRIGGERVVTGAPOVERRIDEFROM3", 4392, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERVVTGAPOVERRIDEFROM4 = Field.create("TRIGGERVVTGAPOVERRIDEFROM4", 4396, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERVVTGAPOVERRIDETO1 = Field.create("TRIGGERVVTGAPOVERRIDETO1", 4400, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERVVTGAPOVERRIDETO2 = Field.create("TRIGGERVVTGAPOVERRIDETO2", 4404, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERVVTGAPOVERRIDETO3 = Field.create("TRIGGERVVTGAPOVERRIDETO3", 4408, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRIGGERVVTGAPOVERRIDETO4 = Field.create("TRIGGERVVTGAPOVERRIDETO4", 4412, FieldType.FLOAT).setBaseOffset(0); - public static final Field TRACTIONCONTROLETBDROP = Field.create("TRACTIONCONTROLETBDROP", 4416, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MAXINJECTORDUTYINSTANT = Field.create("MAXINJECTORDUTYINSTANT", 4452, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MAXINJECTORDUTYSUSTAINED = Field.create("MAXINJECTORDUTYSUSTAINED", 4453, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MAXINJECTORDUTYSUSTAINEDTIMEOUT = Field.create("MAXINJECTORDUTYSUSTAINEDTIMEOUT", 4454, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_4455 = Field.create("ALIGNMENTFILL_AT_4455", 4455, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE21 = Field.create("INJECTIONPINSSTAGE21", 4456, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE22 = Field.create("INJECTIONPINSSTAGE22", 4458, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE23 = Field.create("INJECTIONPINSSTAGE23", 4460, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE24 = Field.create("INJECTIONPINSSTAGE24", 4462, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE25 = Field.create("INJECTIONPINSSTAGE25", 4464, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE26 = Field.create("INJECTIONPINSSTAGE26", 4466, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE27 = Field.create("INJECTIONPINSSTAGE27", 4468, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE28 = Field.create("INJECTIONPINSSTAGE28", 4470, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE29 = Field.create("INJECTIONPINSSTAGE29", 4472, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE210 = Field.create("INJECTIONPINSSTAGE210", 4474, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE211 = Field.create("INJECTIONPINSSTAGE211", 4476, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field INJECTIONPINSSTAGE212 = Field.create("INJECTIONPINSSTAGE212", 4478, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); - public static final Field TRACTIONCONTROLTIMINGDROP = Field.create("TRACTIONCONTROLTIMINGDROP", 4480, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TRACTIONCONTROLIGNITIONSKIP = Field.create("TRACTIONCONTROLIGNITIONSKIP", 4516, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field AUXSPEED1MULTIPLIER = Field.create("AUXSPEED1MULTIPLIER", 4552, FieldType.FLOAT).setBaseOffset(0); - public static final Field BRAKEMEANEFFECTIVEPRESSUREDIFFERENTIAL = Field.create("BRAKEMEANEFFECTIVEPRESSUREDIFFERENTIAL", 4556, FieldType.FLOAT).setBaseOffset(0); - public static final Field SPI4MOSIPIN = Field.create("SPI4MOSIPIN", 4560, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI4MISOPIN = Field.create("SPI4MISOPIN", 4562, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI4SCKPIN = Field.create("SPI4SCKPIN", 4564, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI5MOSIPIN = Field.create("SPI5MOSIPIN", 4566, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI5MISOPIN = Field.create("SPI5MISOPIN", 4568, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI5SCKPIN = Field.create("SPI5SCKPIN", 4570, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI6MOSIPIN = Field.create("SPI6MOSIPIN", 4572, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI6MISOPIN = Field.create("SPI6MISOPIN", 4574, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI6SCKPIN = Field.create("SPI6SCKPIN", 4576, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); - public static final Field SPI4SCKMODE = Field.create("SPI4SCKMODE", 4578, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI4MOSIMODE = Field.create("SPI4MOSIMODE", 4579, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI4MISOMODE = Field.create("SPI4MISOMODE", 4580, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI5SCKMODE = Field.create("SPI5SCKMODE", 4581, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI5MOSIMODE = Field.create("SPI5MOSIMODE", 4582, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI5MISOMODE = Field.create("SPI5MISOMODE", 4583, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI6SCKMODE = Field.create("SPI6SCKMODE", 4584, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field SPI6MOSIMODE = Field.create("SPI6MOSIMODE", 4585, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); - public static final Field UNUSEDOFTENCHANGESDURINGFIRMWAREUPDATE = Field.create("UNUSEDOFTENCHANGESDURINGFIRMWAREUPDATE", 4586, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_4706 = Field.create("ALIGNMENTFILL_AT_4706", 4706, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field ETBBIASBINS = Field.create("ETBBIASBINS", 4708, FieldType.FLOAT).setBaseOffset(0); - public static final Field ETBBIASVALUES = Field.create("ETBBIASVALUES", 4740, FieldType.FLOAT).setBaseOffset(0); - public static final Field IACPIDMULTTABLE = Field.create("IACPIDMULTTABLE", 4772, FieldType.INT8).setScale(0.05).setBaseOffset(0); - public static final Field IACPIDMULTLOADBINS = Field.create("IACPIDMULTLOADBINS", 4836, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IACPIDMULTRPMBINS = Field.create("IACPIDMULTRPMBINS", 4844, FieldType.INT8).setScale(10.0).setBaseOffset(0); - public static final Field SPARKDWELLRPMBINS = Field.create("SPARKDWELLRPMBINS", 4852, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field SPARKDWELLVALUES = Field.create("SPARKDWELLVALUES", 4868, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field CLTIDLERPMBINS = Field.create("CLTIDLERPMBINS", 4884, FieldType.INT8).setScale(2.0).setBaseOffset(0); - public static final Field CLTIDLERPM = Field.create("CLTIDLERPM", 4900, FieldType.INT8).setScale(20.0).setBaseOffset(0); - public static final Field CLTTIMINGBINS = Field.create("CLTTIMINGBINS", 4916, FieldType.FLOAT).setBaseOffset(0); - public static final Field CLTTIMINGEXTRA = Field.create("CLTTIMINGEXTRA", 4948, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE1BINS = Field.create("SCRIPTCURVE1BINS", 4980, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE1 = Field.create("SCRIPTCURVE1", 5044, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE2BINS = Field.create("SCRIPTCURVE2BINS", 5108, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE2 = Field.create("SCRIPTCURVE2", 5172, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE3BINS = Field.create("SCRIPTCURVE3BINS", 5236, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE3 = Field.create("SCRIPTCURVE3", 5268, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE4BINS = Field.create("SCRIPTCURVE4BINS", 5300, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE4 = Field.create("SCRIPTCURVE4", 5332, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE5BINS = Field.create("SCRIPTCURVE5BINS", 5364, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE5 = Field.create("SCRIPTCURVE5", 5396, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE6BINS = Field.create("SCRIPTCURVE6BINS", 5428, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTCURVE6 = Field.create("SCRIPTCURVE6", 5460, FieldType.FLOAT).setBaseOffset(0); - public static final Field BAROCORRPRESSUREBINS = Field.create("BAROCORRPRESSUREBINS", 5492, FieldType.FLOAT).setBaseOffset(0); - public static final Field BAROCORRRPMBINS = Field.create("BAROCORRRPMBINS", 5508, FieldType.FLOAT).setBaseOffset(0); - public static final Field BAROCORRTABLE = Field.create("BAROCORRTABLE", 5524, FieldType.FLOAT).setBaseOffset(0); - public static final Field CRANKINGTPSCOEF = Field.create("CRANKINGTPSCOEF", 5588, FieldType.FLOAT).setBaseOffset(0); - public static final Field CRANKINGTPSBINS = Field.create("CRANKINGTPSBINS", 5620, FieldType.FLOAT).setBaseOffset(0); - public static final Field CRANKINGADVANCEBINS = Field.create("CRANKINGADVANCEBINS", 5652, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field CRANKINGADVANCE = Field.create("CRANKINGADVANCE", 5660, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field IACCOASTINGRPMBINS = Field.create("IACCOASTINGRPMBINS", 5668, FieldType.INT8).setScale(100.0).setBaseOffset(0); - public static final Field IACCOASTING = Field.create("IACCOASTING", 5684, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field WARNING_MESSAGE = Field.create("WARNING_MESSAGE", 5700, 120, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS1 = Field.create("FANCYOPTIONS1", 5820, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS2 = Field.create("FANCYOPTIONS2", 5821, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS3 = Field.create("FANCYOPTIONS3", 5822, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS4 = Field.create("FANCYOPTIONS4", 5823, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS5 = Field.create("FANCYOPTIONS5", 5824, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS6 = Field.create("FANCYOPTIONS6", 5825, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS7 = Field.create("FANCYOPTIONS7", 5826, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS8 = Field.create("FANCYOPTIONS8", 5827, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS9 = Field.create("FANCYOPTIONS9", 5828, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS10 = Field.create("FANCYOPTIONS10", 5829, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS11 = Field.create("FANCYOPTIONS11", 5830, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS12 = Field.create("FANCYOPTIONS12", 5831, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS13 = Field.create("FANCYOPTIONS13", 5832, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS14 = Field.create("FANCYOPTIONS14", 5833, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS15 = Field.create("FANCYOPTIONS15", 5834, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field FANCYOPTIONS16 = Field.create("FANCYOPTIONS16", 5835, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field UNUSEDGAPINCALIBRATION = Field.create("UNUSEDGAPINCALIBRATION", 5836, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTTABLEOPENLOOP = Field.create("BOOSTTABLEOPENLOOP", 5948, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field BOOSTRPMBINS = Field.create("BOOSTRPMBINS", 6012, FieldType.INT8).setScale(100.0).setBaseOffset(0); - public static final Field BOOSTTABLECLOSEDLOOP = Field.create("BOOSTTABLECLOSEDLOOP", 6020, FieldType.INT8).setScale(2.0).setBaseOffset(0); - public static final Field BOOSTTPSBINS = Field.create("BOOSTTPSBINS", 6084, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field PEDALTOTPSTABLE = Field.create("PEDALTOTPSTABLE", 6092, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field PEDALTOTPSPEDALBINS = Field.create("PEDALTOTPSPEDALBINS", 6156, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field PEDALTOTPSRPMBINS = Field.create("PEDALTOTPSRPMBINS", 6164, FieldType.INT8).setScale(100.0).setBaseOffset(0); - public static final Field CLTCRANKINGCORRBINS = Field.create("CLTCRANKINGCORRBINS", 6172, FieldType.FLOAT).setBaseOffset(0); - public static final Field CLTCRANKINGCORR = Field.create("CLTCRANKINGCORR", 6204, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLEADVANCEBINS = Field.create("IDLEADVANCEBINS", 6236, FieldType.INT8).setScale(50.0).setBaseOffset(0); - public static final Field IDLEADVANCE = Field.create("IDLEADVANCE", 6244, FieldType.FLOAT).setBaseOffset(0); - public static final Field IDLEVERPMBINS = Field.create("IDLEVERPMBINS", 6276, FieldType.INT8).setScale(10.0).setBaseOffset(0); - public static final Field IDLEVELOADBINS = Field.create("IDLEVELOADBINS", 6280, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IDLEVETABLE = Field.create("IDLEVETABLE", 6284, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field LUASCRIPT = Field.create("LUASCRIPT", 6316, 8000, FieldType.STRING).setScale(1.0).setBaseOffset(0); - public static final Field CLTFUELCORRBINS = Field.create("CLTFUELCORRBINS", 14316, FieldType.FLOAT).setBaseOffset(0); - public static final Field CLTFUELCORR = Field.create("CLTFUELCORR", 14380, FieldType.FLOAT).setBaseOffset(0); - public static final Field IATFUELCORRBINS = Field.create("IATFUELCORRBINS", 14444, FieldType.FLOAT).setBaseOffset(0); - public static final Field IATFUELCORR = Field.create("IATFUELCORR", 14508, FieldType.FLOAT).setBaseOffset(0); - public static final Field CRANKINGFUELCOEF = Field.create("CRANKINGFUELCOEF", 14572, FieldType.FLOAT).setBaseOffset(0); - public static final Field CRANKINGFUELBINS = Field.create("CRANKINGFUELBINS", 14604, FieldType.FLOAT).setBaseOffset(0); - public static final Field CRANKINGCYCLECOEF = Field.create("CRANKINGCYCLECOEF", 14636, FieldType.FLOAT).setBaseOffset(0); - public static final Field CRANKINGCYCLEBINS = Field.create("CRANKINGCYCLEBINS", 14668, FieldType.FLOAT).setBaseOffset(0); - public static final Field CLTIDLECORRBINS = Field.create("CLTIDLECORRBINS", 14700, FieldType.FLOAT).setBaseOffset(0); - public static final Field CLTIDLECORR = Field.create("CLTIDLECORR", 14764, FieldType.FLOAT).setBaseOffset(0); - public static final Field MAFDECODING = Field.create("MAFDECODING", 14828, FieldType.FLOAT).setBaseOffset(0); - public static final Field MAFDECODINGBINS = Field.create("MAFDECODINGBINS", 14956, FieldType.FLOAT).setBaseOffset(0); - public static final Field IGNITIONIATCORRTABLE = Field.create("IGNITIONIATCORRTABLE", 15084, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field IGNITIONIATCORRTEMPBINS = Field.create("IGNITIONIATCORRTEMPBINS", 15148, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONIATCORRLOADBINS = Field.create("IGNITIONIATCORRLOADBINS", 15156, FieldType.INT8).setScale(5.0).setBaseOffset(0); - public static final Field INJECTIONPHASE = Field.create("INJECTIONPHASE", 15164, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field INJPHASELOADBINS = Field.create("INJPHASELOADBINS", 15676, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field INJPHASERPMBINS = Field.create("INJPHASERPMBINS", 15708, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TCUSOLENOIDTABLE = Field.create("TCUSOLENOIDTABLE", 15740, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MAPESTIMATETABLE = Field.create("MAPESTIMATETABLE", 15800, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field MAPESTIMATETPSBINS = Field.create("MAPESTIMATETPSBINS", 16312, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field MAPESTIMATERPMBINS = Field.create("MAPESTIMATERPMBINS", 16344, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VVTTABLE1 = Field.create("VVTTABLE1", 16376, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VVTTABLE1LOADBINS = Field.create("VVTTABLE1LOADBINS", 16440, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VVTTABLE1RPMBINS = Field.create("VVTTABLE1RPMBINS", 16456, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VVTTABLE2 = Field.create("VVTTABLE2", 16472, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VVTTABLE2LOADBINS = Field.create("VVTTABLE2LOADBINS", 16536, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VVTTABLE2RPMBINS = Field.create("VVTTABLE2RPMBINS", 16552, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONTABLE = Field.create("IGNITIONTABLE", 16568, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field IGNITIONLOADBINS = Field.create("IGNITIONLOADBINS", 17080, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNITIONRPMBINS = Field.create("IGNITIONRPMBINS", 17112, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VETABLE = Field.create("VETABLE", 17144, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field VELOADBINS = Field.create("VELOADBINS", 17656, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VERPMBINS = Field.create("VERPMBINS", 17688, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field LAMBDATABLE = Field.create("LAMBDATABLE", 17720, FieldType.INT8).setScale(0.006802721088435374).setBaseOffset(0); - public static final Field LAMBDALOADBINS = Field.create("LAMBDALOADBINS", 17976, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field LAMBDARPMBINS = Field.create("LAMBDARPMBINS", 18008, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field TPSTPSACCELTABLE = Field.create("TPSTPSACCELTABLE", 18040, FieldType.FLOAT).setBaseOffset(0); - public static final Field TPSTPSACCELFROMRPMBINS = Field.create("TPSTPSACCELFROMRPMBINS", 18296, FieldType.FLOAT).setBaseOffset(0); - public static final Field TPSTPSACCELTORPMBINS = Field.create("TPSTPSACCELTORPMBINS", 18328, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTTABLE1 = Field.create("SCRIPTTABLE1", 18360, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTTABLE1LOADBINS = Field.create("SCRIPTTABLE1LOADBINS", 18616, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLE1RPMBINS = Field.create("SCRIPTTABLE1RPMBINS", 18632, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLE2 = Field.create("SCRIPTTABLE2", 18648, FieldType.FLOAT).setBaseOffset(0); - public static final Field SCRIPTTABLE2LOADBINS = Field.create("SCRIPTTABLE2LOADBINS", 18904, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLE2RPMBINS = Field.create("SCRIPTTABLE2RPMBINS", 18920, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLE3 = Field.create("SCRIPTTABLE3", 18936, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLE3LOADBINS = Field.create("SCRIPTTABLE3LOADBINS", 19000, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLE3RPMBINS = Field.create("SCRIPTTABLE3RPMBINS", 19016, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLE4 = Field.create("SCRIPTTABLE4", 19032, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLE4LOADBINS = Field.create("SCRIPTTABLE4LOADBINS", 19112, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field SCRIPTTABLE4RPMBINS = Field.create("SCRIPTTABLE4RPMBINS", 19128, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNTRIMLOADBINS = Field.create("IGNTRIMLOADBINS", 19148, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNTRIMRPMBINS = Field.create("IGNTRIMRPMBINS", 19156, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNTRIMS1_TABLE = Field.create("IGNTRIMS1_TABLE", 19164, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS2_TABLE = Field.create("IGNTRIMS2_TABLE", 19180, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS3_TABLE = Field.create("IGNTRIMS3_TABLE", 19196, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS4_TABLE = Field.create("IGNTRIMS4_TABLE", 19212, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS5_TABLE = Field.create("IGNTRIMS5_TABLE", 19228, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS6_TABLE = Field.create("IGNTRIMS6_TABLE", 19244, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS7_TABLE = Field.create("IGNTRIMS7_TABLE", 19260, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS8_TABLE = Field.create("IGNTRIMS8_TABLE", 19276, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS9_TABLE = Field.create("IGNTRIMS9_TABLE", 19292, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS10_TABLE = Field.create("IGNTRIMS10_TABLE", 19308, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS11_TABLE = Field.create("IGNTRIMS11_TABLE", 19324, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field IGNTRIMS12_TABLE = Field.create("IGNTRIMS12_TABLE", 19340, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMLOADBINS = Field.create("FUELTRIMLOADBINS", 19356, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field FUELTRIMRPMBINS = Field.create("FUELTRIMRPMBINS", 19364, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field FUELTRIMS1_TABLE = Field.create("FUELTRIMS1_TABLE", 19372, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS2_TABLE = Field.create("FUELTRIMS2_TABLE", 19388, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS3_TABLE = Field.create("FUELTRIMS3_TABLE", 19404, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS4_TABLE = Field.create("FUELTRIMS4_TABLE", 19420, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS5_TABLE = Field.create("FUELTRIMS5_TABLE", 19436, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS6_TABLE = Field.create("FUELTRIMS6_TABLE", 19452, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS7_TABLE = Field.create("FUELTRIMS7_TABLE", 19468, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS8_TABLE = Field.create("FUELTRIMS8_TABLE", 19484, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS9_TABLE = Field.create("FUELTRIMS9_TABLE", 19500, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS10_TABLE = Field.create("FUELTRIMS10_TABLE", 19516, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS11_TABLE = Field.create("FUELTRIMS11_TABLE", 19532, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field FUELTRIMS12_TABLE = Field.create("FUELTRIMS12_TABLE", 19548, FieldType.INT8).setScale(0.2).setBaseOffset(0); - public static final Field CRANKINGFUELCOEFE100 = Field.create("CRANKINGFUELCOEFE100", 19564, FieldType.INT16).setScale(0.01).setBaseOffset(0); - public static final Field TCU_PCAIRMASSBINS = Field.create("TCU_PCAIRMASSBINS", 19580, FieldType.INT8).setScale(0.02).setBaseOffset(0); - public static final Field TCU_PCVALSR = Field.create("TCU_PCVALSR", 19588, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALSN = Field.create("TCU_PCVALSN", 19596, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALS1 = Field.create("TCU_PCVALS1", 19604, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALS2 = Field.create("TCU_PCVALS2", 19612, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALS3 = Field.create("TCU_PCVALS3", 19620, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALS4 = Field.create("TCU_PCVALS4", 19628, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALS12 = Field.create("TCU_PCVALS12", 19636, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALS23 = Field.create("TCU_PCVALS23", 19644, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALS34 = Field.create("TCU_PCVALS34", 19652, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALS21 = Field.create("TCU_PCVALS21", 19660, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALS32 = Field.create("TCU_PCVALS32", 19668, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_PCVALS43 = Field.create("TCU_PCVALS43", 19676, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_TCCTPSBINS = Field.create("TCU_TCCTPSBINS", 19684, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_TCCLOCKSPEED = Field.create("TCU_TCCLOCKSPEED", 19692, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_TCCUNLOCKSPEED = Field.create("TCU_TCCUNLOCKSPEED", 19700, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_32SPEEDBINS = Field.create("TCU_32SPEEDBINS", 19708, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_32VALS = Field.create("TCU_32VALS", 19716, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field THROTTLE2TRIMTABLE = Field.create("THROTTLE2TRIMTABLE", 19724, FieldType.INT8).setScale(0.1).setBaseOffset(0); - public static final Field THROTTLE2TRIMTPSBINS = Field.create("THROTTLE2TRIMTPSBINS", 19760, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field THROTTLE2TRIMRPMBINS = Field.create("THROTTLE2TRIMRPMBINS", 19766, FieldType.INT8).setScale(100.0).setBaseOffset(0); - public static final Field MAXKNOCKRETARDTABLE = Field.create("MAXKNOCKRETARDTABLE", 19772, FieldType.INT8).setScale(0.25).setBaseOffset(0); - public static final Field MAXKNOCKRETARDLOADBINS = Field.create("MAXKNOCKRETARDLOADBINS", 19808, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field MAXKNOCKRETARDRPMBINS = Field.create("MAXKNOCKRETARDRPMBINS", 19814, FieldType.INT8).setScale(100.0).setBaseOffset(0); - public static final Field ALSTIMINGRETARDTABLE = Field.create("ALSTIMINGRETARDTABLE", 19820, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field ALSIGNRETARDLOADBINS = Field.create("ALSIGNRETARDLOADBINS", 19852, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALSIGNRETARDRPMBINS = Field.create("ALSIGNRETARDRPMBINS", 19860, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALSFUELADJUSTMENT = Field.create("ALSFUELADJUSTMENT", 19868, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field ALSFUELADJUSTMENTLOADBINS = Field.create("ALSFUELADJUSTMENTLOADBINS", 19900, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALSFUELADJUSTMENTRPMBINS = Field.create("ALSFUELADJUSTMENTRPMBINS", 19908, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALSIGNSKIPTABLE = Field.create("ALSIGNSKIPTABLE", 19916, FieldType.INT16).setScale(10.0).setBaseOffset(0); - public static final Field ALSIGNSKIPLOADBINS = Field.create("ALSIGNSKIPLOADBINS", 19948, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALSIGNSKIPRPMBINS = Field.create("ALSIGNSKIPRPMBINS", 19956, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS1_TABLE = Field.create("IGNBLENDS1_TABLE", 19964, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field IGNBLENDS1_LOADBINS = Field.create("IGNBLENDS1_LOADBINS", 20092, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS1_RPMBINS = Field.create("IGNBLENDS1_RPMBINS", 20108, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS1_BLENDPARAMETER = Field.create("IGNBLENDS1_BLENDPARAMETER", 20124, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS1_YAXISOVERRIDE = Field.create("IGNBLENDS1_YAXISOVERRIDE", 20125, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS1_BLENDBINS = Field.create("IGNBLENDS1_BLENDBINS", 20126, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field IGNBLENDS1_BLENDVALUES = Field.create("IGNBLENDS1_BLENDVALUES", 20142, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field IGNBLENDS1_ALIGNMENTFILL_AT_186 = Field.create("IGNBLENDS1_ALIGNMENTFILL_AT_186", 20150, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS2_TABLE = Field.create("IGNBLENDS2_TABLE", 20152, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field IGNBLENDS2_LOADBINS = Field.create("IGNBLENDS2_LOADBINS", 20280, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS2_RPMBINS = Field.create("IGNBLENDS2_RPMBINS", 20296, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS2_BLENDPARAMETER = Field.create("IGNBLENDS2_BLENDPARAMETER", 20312, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS2_YAXISOVERRIDE = Field.create("IGNBLENDS2_YAXISOVERRIDE", 20313, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS2_BLENDBINS = Field.create("IGNBLENDS2_BLENDBINS", 20314, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field IGNBLENDS2_BLENDVALUES = Field.create("IGNBLENDS2_BLENDVALUES", 20330, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field IGNBLENDS2_ALIGNMENTFILL_AT_186 = Field.create("IGNBLENDS2_ALIGNMENTFILL_AT_186", 20338, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS3_TABLE = Field.create("IGNBLENDS3_TABLE", 20340, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field IGNBLENDS3_LOADBINS = Field.create("IGNBLENDS3_LOADBINS", 20468, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS3_RPMBINS = Field.create("IGNBLENDS3_RPMBINS", 20484, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS3_BLENDPARAMETER = Field.create("IGNBLENDS3_BLENDPARAMETER", 20500, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS3_YAXISOVERRIDE = Field.create("IGNBLENDS3_YAXISOVERRIDE", 20501, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS3_BLENDBINS = Field.create("IGNBLENDS3_BLENDBINS", 20502, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field IGNBLENDS3_BLENDVALUES = Field.create("IGNBLENDS3_BLENDVALUES", 20518, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field IGNBLENDS3_ALIGNMENTFILL_AT_186 = Field.create("IGNBLENDS3_ALIGNMENTFILL_AT_186", 20526, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS4_TABLE = Field.create("IGNBLENDS4_TABLE", 20528, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field IGNBLENDS4_LOADBINS = Field.create("IGNBLENDS4_LOADBINS", 20656, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS4_RPMBINS = Field.create("IGNBLENDS4_RPMBINS", 20672, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS4_BLENDPARAMETER = Field.create("IGNBLENDS4_BLENDPARAMETER", 20688, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS4_YAXISOVERRIDE = Field.create("IGNBLENDS4_YAXISOVERRIDE", 20689, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field IGNBLENDS4_BLENDBINS = Field.create("IGNBLENDS4_BLENDBINS", 20690, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field IGNBLENDS4_BLENDVALUES = Field.create("IGNBLENDS4_BLENDVALUES", 20706, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field IGNBLENDS4_ALIGNMENTFILL_AT_186 = Field.create("IGNBLENDS4_ALIGNMENTFILL_AT_186", 20714, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS1_TABLE = Field.create("VEBLENDS1_TABLE", 20716, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field VEBLENDS1_LOADBINS = Field.create("VEBLENDS1_LOADBINS", 20844, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS1_RPMBINS = Field.create("VEBLENDS1_RPMBINS", 20860, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS1_BLENDPARAMETER = Field.create("VEBLENDS1_BLENDPARAMETER", 20876, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS1_YAXISOVERRIDE = Field.create("VEBLENDS1_YAXISOVERRIDE", 20877, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS1_BLENDBINS = Field.create("VEBLENDS1_BLENDBINS", 20878, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field VEBLENDS1_BLENDVALUES = Field.create("VEBLENDS1_BLENDVALUES", 20894, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field VEBLENDS1_ALIGNMENTFILL_AT_186 = Field.create("VEBLENDS1_ALIGNMENTFILL_AT_186", 20902, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS2_TABLE = Field.create("VEBLENDS2_TABLE", 20904, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field VEBLENDS2_LOADBINS = Field.create("VEBLENDS2_LOADBINS", 21032, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS2_RPMBINS = Field.create("VEBLENDS2_RPMBINS", 21048, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS2_BLENDPARAMETER = Field.create("VEBLENDS2_BLENDPARAMETER", 21064, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS2_YAXISOVERRIDE = Field.create("VEBLENDS2_YAXISOVERRIDE", 21065, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS2_BLENDBINS = Field.create("VEBLENDS2_BLENDBINS", 21066, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field VEBLENDS2_BLENDVALUES = Field.create("VEBLENDS2_BLENDVALUES", 21082, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field VEBLENDS2_ALIGNMENTFILL_AT_186 = Field.create("VEBLENDS2_ALIGNMENTFILL_AT_186", 21090, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS3_TABLE = Field.create("VEBLENDS3_TABLE", 21092, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field VEBLENDS3_LOADBINS = Field.create("VEBLENDS3_LOADBINS", 21220, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS3_RPMBINS = Field.create("VEBLENDS3_RPMBINS", 21236, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS3_BLENDPARAMETER = Field.create("VEBLENDS3_BLENDPARAMETER", 21252, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS3_YAXISOVERRIDE = Field.create("VEBLENDS3_YAXISOVERRIDE", 21253, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS3_BLENDBINS = Field.create("VEBLENDS3_BLENDBINS", 21254, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field VEBLENDS3_BLENDVALUES = Field.create("VEBLENDS3_BLENDVALUES", 21270, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field VEBLENDS3_ALIGNMENTFILL_AT_186 = Field.create("VEBLENDS3_ALIGNMENTFILL_AT_186", 21278, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS4_TABLE = Field.create("VEBLENDS4_TABLE", 21280, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field VEBLENDS4_LOADBINS = Field.create("VEBLENDS4_LOADBINS", 21408, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS4_RPMBINS = Field.create("VEBLENDS4_RPMBINS", 21424, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS4_BLENDPARAMETER = Field.create("VEBLENDS4_BLENDPARAMETER", 21440, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS4_YAXISOVERRIDE = Field.create("VEBLENDS4_YAXISOVERRIDE", 21441, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field VEBLENDS4_BLENDBINS = Field.create("VEBLENDS4_BLENDBINS", 21442, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field VEBLENDS4_BLENDVALUES = Field.create("VEBLENDS4_BLENDVALUES", 21458, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field VEBLENDS4_ALIGNMENTFILL_AT_186 = Field.create("VEBLENDS4_ALIGNMENTFILL_AT_186", 21466, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field THROTTLEESTIMATEEFFECTIVEAREABINS = Field.create("THROTTLEESTIMATEEFFECTIVEAREABINS", 21468, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field THROTTLEESTIMATEEFFECTIVEAREAVALUES = Field.create("THROTTLEESTIMATEEFFECTIVEAREAVALUES", 21492, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS1_TABLE = Field.create("BOOSTOPENLOOPBLENDS1_TABLE", 21516, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS1_LOADBINS = Field.create("BOOSTOPENLOOPBLENDS1_LOADBINS", 21644, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS1_RPMBINS = Field.create("BOOSTOPENLOOPBLENDS1_RPMBINS", 21660, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS1_BLENDPARAMETER = Field.create("BOOSTOPENLOOPBLENDS1_BLENDPARAMETER", 21676, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS1_YAXISOVERRIDE = Field.create("BOOSTOPENLOOPBLENDS1_YAXISOVERRIDE", 21677, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS1_BLENDBINS = Field.create("BOOSTOPENLOOPBLENDS1_BLENDBINS", 21678, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS1_BLENDVALUES = Field.create("BOOSTOPENLOOPBLENDS1_BLENDVALUES", 21694, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS1_ALIGNMENTFILL_AT_186 = Field.create("BOOSTOPENLOOPBLENDS1_ALIGNMENTFILL_AT_186", 21702, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS2_TABLE = Field.create("BOOSTOPENLOOPBLENDS2_TABLE", 21704, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS2_LOADBINS = Field.create("BOOSTOPENLOOPBLENDS2_LOADBINS", 21832, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS2_RPMBINS = Field.create("BOOSTOPENLOOPBLENDS2_RPMBINS", 21848, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS2_BLENDPARAMETER = Field.create("BOOSTOPENLOOPBLENDS2_BLENDPARAMETER", 21864, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS2_YAXISOVERRIDE = Field.create("BOOSTOPENLOOPBLENDS2_YAXISOVERRIDE", 21865, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS2_BLENDBINS = Field.create("BOOSTOPENLOOPBLENDS2_BLENDBINS", 21866, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS2_BLENDVALUES = Field.create("BOOSTOPENLOOPBLENDS2_BLENDVALUES", 21882, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field BOOSTOPENLOOPBLENDS2_ALIGNMENTFILL_AT_186 = Field.create("BOOSTOPENLOOPBLENDS2_ALIGNMENTFILL_AT_186", 21890, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS1_TABLE = Field.create("BOOSTCLOSEDLOOPBLENDS1_TABLE", 21892, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS1_LOADBINS = Field.create("BOOSTCLOSEDLOOPBLENDS1_LOADBINS", 22020, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS1_RPMBINS = Field.create("BOOSTCLOSEDLOOPBLENDS1_RPMBINS", 22036, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS1_BLENDPARAMETER = Field.create("BOOSTCLOSEDLOOPBLENDS1_BLENDPARAMETER", 22052, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS1_YAXISOVERRIDE = Field.create("BOOSTCLOSEDLOOPBLENDS1_YAXISOVERRIDE", 22053, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS1_BLENDBINS = Field.create("BOOSTCLOSEDLOOPBLENDS1_BLENDBINS", 22054, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS1_BLENDVALUES = Field.create("BOOSTCLOSEDLOOPBLENDS1_BLENDVALUES", 22070, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS1_ALIGNMENTFILL_AT_186 = Field.create("BOOSTCLOSEDLOOPBLENDS1_ALIGNMENTFILL_AT_186", 22078, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS2_TABLE = Field.create("BOOSTCLOSEDLOOPBLENDS2_TABLE", 22080, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS2_LOADBINS = Field.create("BOOSTCLOSEDLOOPBLENDS2_LOADBINS", 22208, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS2_RPMBINS = Field.create("BOOSTCLOSEDLOOPBLENDS2_RPMBINS", 22224, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS2_BLENDPARAMETER = Field.create("BOOSTCLOSEDLOOPBLENDS2_BLENDPARAMETER", 22240, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS2_YAXISOVERRIDE = Field.create("BOOSTCLOSEDLOOPBLENDS2_YAXISOVERRIDE", 22241, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS2_BLENDBINS = Field.create("BOOSTCLOSEDLOOPBLENDS2_BLENDBINS", 22242, FieldType.INT16).setScale(0.1).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS2_BLENDVALUES = Field.create("BOOSTCLOSEDLOOPBLENDS2_BLENDVALUES", 22258, FieldType.INT8).setScale(0.5).setBaseOffset(0); - public static final Field BOOSTCLOSEDLOOPBLENDS2_ALIGNMENTFILL_AT_186 = Field.create("BOOSTCLOSEDLOOPBLENDS2_ALIGNMENTFILL_AT_186", 22266, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEP = Field.create("TCU_RANGEP", 22268, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGER = Field.create("TCU_RANGER", 22274, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEN = Field.create("TCU_RANGEN", 22280, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGED = Field.create("TCU_RANGED", 22286, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEM = Field.create("TCU_RANGEM", 22292, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEM3 = Field.create("TCU_RANGEM3", 22298, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEM2 = Field.create("TCU_RANGEM2", 22304, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEM1 = Field.create("TCU_RANGEM1", 22310, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEPLUS = Field.create("TCU_RANGEPLUS", 22316, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGEMINUS = Field.create("TCU_RANGEMINUS", 22322, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field TCU_RANGELOW = Field.create("TCU_RANGELOW", 22328, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field LAMBDAMAXDEVIATIONTABLE = Field.create("LAMBDAMAXDEVIATIONTABLE", 22334, FieldType.INT8).setScale(0.01).setBaseOffset(0); - public static final Field LAMBDAMAXDEVIATIONLOADBINS = Field.create("LAMBDAMAXDEVIATIONLOADBINS", 22350, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field LAMBDAMAXDEVIATIONRPMBINS = Field.create("LAMBDAMAXDEVIATIONRPMBINS", 22358, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field INJECTORSTAGINGTABLE = Field.create("INJECTORSTAGINGTABLE", 22366, FieldType.INT8).setScale(1.0).setBaseOffset(0); - public static final Field INJECTORSTAGINGLOADBINS = Field.create("INJECTORSTAGINGLOADBINS", 22402, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field INJECTORSTAGINGRPMBINS = Field.create("INJECTORSTAGINGRPMBINS", 22414, FieldType.INT16).setScale(1.0).setBaseOffset(0); - public static final Field ALIGNMENTFILL_AT_22426 = Field.create("ALIGNMENTFILL_AT_22426", 22426, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field UIMODE = Field.create("UIMODE", 3589, FieldType.INT8, UiMode).setScale(1.0).setBaseOffset(0); + public static final Field HPFPPEAKPOS = Field.create("HPFPPEAKPOS", 3590, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field KLINEPERIODUS = Field.create("KLINEPERIODUS", 3592, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field RPMSOFTLIMITWINDOWSIZE = Field.create("RPMSOFTLIMITWINDOWSIZE", 3594, FieldType.INT8).setScale(10.0).setBaseOffset(0); + public static final Field RPMSOFTLIMITTIMINGRETARD = Field.create("RPMSOFTLIMITTIMINGRETARD", 3595, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field RPMSOFTLIMITFUELADDED = Field.create("RPMSOFTLIMITFUELADDED", 3596, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field RPMHARDLIMITHYST = Field.create("RPMHARDLIMITHYST", 3597, FieldType.INT8).setScale(10.0).setBaseOffset(0); + public static final Field BENCHTESTOFFTIME = Field.create("BENCHTESTOFFTIME", 3598, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field BOOSTCUTPRESSUREHYST = Field.create("BOOSTCUTPRESSUREHYST", 3600, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field GEARBASEDOPENLOOPBOOSTADDER = Field.create("GEARBASEDOPENLOOPBOOSTADDER", 3601, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3611 = Field.create("ALIGNMENTFILL_AT_3611", 3611, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field BENCHTESTCOUNT = Field.create("BENCHTESTCOUNT", 3612, FieldType.INT).setScale(1.0).setBaseOffset(0); + public static final Field IACBYTPSHOLDTIME = Field.create("IACBYTPSHOLDTIME", 3616, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field IACBYTPSDECAYTIME = Field.create("IACBYTPSDECAYTIME", 3617, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field TCU_RANGEINPUT1 = Field.create("TCU_RANGEINPUT1", 3618, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUT2 = Field.create("TCU_RANGEINPUT2", 3620, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUT3 = Field.create("TCU_RANGEINPUT3", 3622, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUT4 = Field.create("TCU_RANGEINPUT4", 3624, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUT5 = Field.create("TCU_RANGEINPUT5", 3626, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUT6 = Field.create("TCU_RANGEINPUT6", 3628, FieldType.INT16, switch_input_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUTMODE1 = Field.create("TCU_RANGEINPUTMODE1", 3630, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUTMODE2 = Field.create("TCU_RANGEINPUTMODE2", 3631, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUTMODE3 = Field.create("TCU_RANGEINPUTMODE3", 3632, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUTMODE4 = Field.create("TCU_RANGEINPUTMODE4", 3633, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUTMODE5 = Field.create("TCU_RANGEINPUTMODE5", 3634, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEINPUTMODE6 = Field.create("TCU_RANGEINPUTMODE6", 3635, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field CANVSSSCALING = Field.create("CANVSSSCALING", 3636, FieldType.INT16).setScale(1.0E-4).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3638 = Field.create("ALIGNMENTFILL_AT_3638", 3638, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field OILTEMPSENSOR_TEMPC_1 = Field.create("OILTEMPSENSOR_TEMPC_1", 3640, FieldType.FLOAT).setBaseOffset(0); + public static final Field OILTEMPSENSOR_TEMPC_2 = Field.create("OILTEMPSENSOR_TEMPC_2", 3644, FieldType.FLOAT).setBaseOffset(0); + public static final Field OILTEMPSENSOR_TEMPC_3 = Field.create("OILTEMPSENSOR_TEMPC_3", 3648, FieldType.FLOAT).setBaseOffset(0); + public static final Field OILTEMPSENSOR_RESISTANCE_1 = Field.create("OILTEMPSENSOR_RESISTANCE_1", 3652, FieldType.FLOAT).setBaseOffset(0); + public static final Field OILTEMPSENSOR_RESISTANCE_2 = Field.create("OILTEMPSENSOR_RESISTANCE_2", 3656, FieldType.FLOAT).setBaseOffset(0); + public static final Field OILTEMPSENSOR_RESISTANCE_3 = Field.create("OILTEMPSENSOR_RESISTANCE_3", 3660, FieldType.FLOAT).setBaseOffset(0); + public static final Field OILTEMPSENSOR_BIAS_RESISTOR = Field.create("OILTEMPSENSOR_BIAS_RESISTOR", 3664, FieldType.FLOAT).setBaseOffset(0); + public static final Field OILTEMPSENSOR_ADCCHANNEL = Field.create("OILTEMPSENSOR_ADCCHANNEL", 3668, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field OILTEMPSENSOR_ALIGNMENTFILL_AT_29 = Field.create("OILTEMPSENSOR_ALIGNMENTFILL_AT_29", 3669, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FUELTEMPSENSOR_TEMPC_1 = Field.create("FUELTEMPSENSOR_TEMPC_1", 3672, FieldType.FLOAT).setBaseOffset(0); + public static final Field FUELTEMPSENSOR_TEMPC_2 = Field.create("FUELTEMPSENSOR_TEMPC_2", 3676, FieldType.FLOAT).setBaseOffset(0); + public static final Field FUELTEMPSENSOR_TEMPC_3 = Field.create("FUELTEMPSENSOR_TEMPC_3", 3680, FieldType.FLOAT).setBaseOffset(0); + public static final Field FUELTEMPSENSOR_RESISTANCE_1 = Field.create("FUELTEMPSENSOR_RESISTANCE_1", 3684, FieldType.FLOAT).setBaseOffset(0); + public static final Field FUELTEMPSENSOR_RESISTANCE_2 = Field.create("FUELTEMPSENSOR_RESISTANCE_2", 3688, FieldType.FLOAT).setBaseOffset(0); + public static final Field FUELTEMPSENSOR_RESISTANCE_3 = Field.create("FUELTEMPSENSOR_RESISTANCE_3", 3692, FieldType.FLOAT).setBaseOffset(0); + public static final Field FUELTEMPSENSOR_BIAS_RESISTOR = Field.create("FUELTEMPSENSOR_BIAS_RESISTOR", 3696, FieldType.FLOAT).setBaseOffset(0); + public static final Field FUELTEMPSENSOR_ADCCHANNEL = Field.create("FUELTEMPSENSOR_ADCCHANNEL", 3700, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field FUELTEMPSENSOR_ALIGNMENTFILL_AT_29 = Field.create("FUELTEMPSENSOR_ALIGNMENTFILL_AT_29", 3701, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field AMBIENTTEMPSENSOR_TEMPC_1 = Field.create("AMBIENTTEMPSENSOR_TEMPC_1", 3704, FieldType.FLOAT).setBaseOffset(0); + public static final Field AMBIENTTEMPSENSOR_TEMPC_2 = Field.create("AMBIENTTEMPSENSOR_TEMPC_2", 3708, FieldType.FLOAT).setBaseOffset(0); + public static final Field AMBIENTTEMPSENSOR_TEMPC_3 = Field.create("AMBIENTTEMPSENSOR_TEMPC_3", 3712, FieldType.FLOAT).setBaseOffset(0); + public static final Field AMBIENTTEMPSENSOR_RESISTANCE_1 = Field.create("AMBIENTTEMPSENSOR_RESISTANCE_1", 3716, FieldType.FLOAT).setBaseOffset(0); + public static final Field AMBIENTTEMPSENSOR_RESISTANCE_2 = Field.create("AMBIENTTEMPSENSOR_RESISTANCE_2", 3720, FieldType.FLOAT).setBaseOffset(0); + public static final Field AMBIENTTEMPSENSOR_RESISTANCE_3 = Field.create("AMBIENTTEMPSENSOR_RESISTANCE_3", 3724, FieldType.FLOAT).setBaseOffset(0); + public static final Field AMBIENTTEMPSENSOR_BIAS_RESISTOR = Field.create("AMBIENTTEMPSENSOR_BIAS_RESISTOR", 3728, FieldType.FLOAT).setBaseOffset(0); + public static final Field AMBIENTTEMPSENSOR_ADCCHANNEL = Field.create("AMBIENTTEMPSENSOR_ADCCHANNEL", 3732, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field AMBIENTTEMPSENSOR_ALIGNMENTFILL_AT_29 = Field.create("AMBIENTTEMPSENSOR_ALIGNMENTFILL_AT_29", 3733, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field COMPRESSORDISCHARGETEMPERATURE_TEMPC_1 = Field.create("COMPRESSORDISCHARGETEMPERATURE_TEMPC_1", 3736, FieldType.FLOAT).setBaseOffset(0); + public static final Field COMPRESSORDISCHARGETEMPERATURE_TEMPC_2 = Field.create("COMPRESSORDISCHARGETEMPERATURE_TEMPC_2", 3740, FieldType.FLOAT).setBaseOffset(0); + public static final Field COMPRESSORDISCHARGETEMPERATURE_TEMPC_3 = Field.create("COMPRESSORDISCHARGETEMPERATURE_TEMPC_3", 3744, FieldType.FLOAT).setBaseOffset(0); + public static final Field COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_1 = Field.create("COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_1", 3748, FieldType.FLOAT).setBaseOffset(0); + public static final Field COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_2 = Field.create("COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_2", 3752, FieldType.FLOAT).setBaseOffset(0); + public static final Field COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_3 = Field.create("COMPRESSORDISCHARGETEMPERATURE_RESISTANCE_3", 3756, FieldType.FLOAT).setBaseOffset(0); + public static final Field COMPRESSORDISCHARGETEMPERATURE_BIAS_RESISTOR = Field.create("COMPRESSORDISCHARGETEMPERATURE_BIAS_RESISTOR", 3760, FieldType.FLOAT).setBaseOffset(0); + public static final Field COMPRESSORDISCHARGETEMPERATURE_ADCCHANNEL = Field.create("COMPRESSORDISCHARGETEMPERATURE_ADCCHANNEL", 3764, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field COMPRESSORDISCHARGETEMPERATURE_ALIGNMENTFILL_AT_29 = Field.create("COMPRESSORDISCHARGETEMPERATURE_ALIGNMENTFILL_AT_29", 3765, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field THROTTLEINLETPRESSURECHANNEL = Field.create("THROTTLEINLETPRESSURECHANNEL", 3768, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field COMPRESSORDISCHARGEPRESSURECHANNEL = Field.create("COMPRESSORDISCHARGEPRESSURECHANNEL", 3769, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field DACOUTPUTPINS1 = Field.create("DACOUTPUTPINS1", 3770, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field DACOUTPUTPINS2 = Field.create("DACOUTPUTPINS2", 3772, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPEEDOMETEROUTPUTPIN = Field.create("SPEEDOMETEROUTPUTPIN", 3774, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field SPEEDOMETERPULSEPERKM = Field.create("SPEEDOMETERPULSEPERKM", 3776, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SIMULATORCAMPOSITION1 = Field.create("SIMULATORCAMPOSITION1", 3778, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SIMULATORCAMPOSITION2 = Field.create("SIMULATORCAMPOSITION2", 3779, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SIMULATORCAMPOSITION3 = Field.create("SIMULATORCAMPOSITION3", 3780, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SIMULATORCAMPOSITION4 = Field.create("SIMULATORCAMPOSITION4", 3781, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IGNKEYADCCHANNEL = Field.create("IGNKEYADCCHANNEL", 3782, FieldType.INT8, adc_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI6MISOMODE = Field.create("SPI6MISOMODE", 3783, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field TRIGGERVVTGAPOVERRIDEFROM1 = Field.create("TRIGGERVVTGAPOVERRIDEFROM1", 3784, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERVVTGAPOVERRIDEFROM2 = Field.create("TRIGGERVVTGAPOVERRIDEFROM2", 3788, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERVVTGAPOVERRIDEFROM3 = Field.create("TRIGGERVVTGAPOVERRIDEFROM3", 3792, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERVVTGAPOVERRIDEFROM4 = Field.create("TRIGGERVVTGAPOVERRIDEFROM4", 3796, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERVVTGAPOVERRIDETO1 = Field.create("TRIGGERVVTGAPOVERRIDETO1", 3800, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERVVTGAPOVERRIDETO2 = Field.create("TRIGGERVVTGAPOVERRIDETO2", 3804, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERVVTGAPOVERRIDETO3 = Field.create("TRIGGERVVTGAPOVERRIDETO3", 3808, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRIGGERVVTGAPOVERRIDETO4 = Field.create("TRIGGERVVTGAPOVERRIDETO4", 3812, FieldType.FLOAT).setBaseOffset(0); + public static final Field TRACTIONCONTROLETBDROP = Field.create("TRACTIONCONTROLETBDROP", 3816, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MAXINJECTORDUTYINSTANT = Field.create("MAXINJECTORDUTYINSTANT", 3852, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MAXINJECTORDUTYSUSTAINED = Field.create("MAXINJECTORDUTYSUSTAINED", 3853, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MAXINJECTORDUTYSUSTAINEDTIMEOUT = Field.create("MAXINJECTORDUTYSUSTAINEDTIMEOUT", 3854, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_3855 = Field.create("ALIGNMENTFILL_AT_3855", 3855, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE21 = Field.create("INJECTIONPINSSTAGE21", 3856, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE22 = Field.create("INJECTIONPINSSTAGE22", 3858, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE23 = Field.create("INJECTIONPINSSTAGE23", 3860, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE24 = Field.create("INJECTIONPINSSTAGE24", 3862, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE25 = Field.create("INJECTIONPINSSTAGE25", 3864, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE26 = Field.create("INJECTIONPINSSTAGE26", 3866, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE27 = Field.create("INJECTIONPINSSTAGE27", 3868, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE28 = Field.create("INJECTIONPINSSTAGE28", 3870, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE29 = Field.create("INJECTIONPINSSTAGE29", 3872, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE210 = Field.create("INJECTIONPINSSTAGE210", 3874, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE211 = Field.create("INJECTIONPINSSTAGE211", 3876, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field INJECTIONPINSSTAGE212 = Field.create("INJECTIONPINSSTAGE212", 3878, FieldType.INT16, output_pin_e).setScale(1.0).setBaseOffset(0); + public static final Field TRACTIONCONTROLTIMINGDROP = Field.create("TRACTIONCONTROLTIMINGDROP", 3880, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TRACTIONCONTROLIGNITIONSKIP = Field.create("TRACTIONCONTROLIGNITIONSKIP", 3916, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field AUXSPEED1MULTIPLIER = Field.create("AUXSPEED1MULTIPLIER", 3952, FieldType.FLOAT).setBaseOffset(0); + public static final Field BRAKEMEANEFFECTIVEPRESSUREDIFFERENTIAL = Field.create("BRAKEMEANEFFECTIVEPRESSUREDIFFERENTIAL", 3956, FieldType.FLOAT).setBaseOffset(0); + public static final Field SPI4MOSIPIN = Field.create("SPI4MOSIPIN", 3960, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI4MISOPIN = Field.create("SPI4MISOPIN", 3962, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI4SCKPIN = Field.create("SPI4SCKPIN", 3964, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI5MOSIPIN = Field.create("SPI5MOSIPIN", 3966, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI5MISOPIN = Field.create("SPI5MISOPIN", 3968, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI5SCKPIN = Field.create("SPI5SCKPIN", 3970, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI6MOSIPIN = Field.create("SPI6MOSIPIN", 3972, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI6MISOPIN = Field.create("SPI6MISOPIN", 3974, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI6SCKPIN = Field.create("SPI6SCKPIN", 3976, FieldType.INT16, Gpio).setScale(1.0).setBaseOffset(0); + public static final Field SPI4SCKMODE = Field.create("SPI4SCKMODE", 3978, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI4MOSIMODE = Field.create("SPI4MOSIMODE", 3979, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI4MISOMODE = Field.create("SPI4MISOMODE", 3980, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI5SCKMODE = Field.create("SPI5SCKMODE", 3981, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI5MOSIMODE = Field.create("SPI5MOSIMODE", 3982, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI5MISOMODE = Field.create("SPI5MISOMODE", 3983, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI6SCKMODE = Field.create("SPI6SCKMODE", 3984, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field SPI6MOSIMODE = Field.create("SPI6MOSIMODE", 3985, FieldType.INT8, pin_mode_e).setScale(1.0).setBaseOffset(0); + public static final Field UNUSEDOFTENCHANGESDURINGFIRMWAREUPDATE = Field.create("UNUSEDOFTENCHANGESDURINGFIRMWAREUPDATE", 3986, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_4226 = Field.create("ALIGNMENTFILL_AT_4226", 4226, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field ETBBIASBINS = Field.create("ETBBIASBINS", 4228, FieldType.FLOAT).setBaseOffset(0); + public static final Field ETBBIASVALUES = Field.create("ETBBIASVALUES", 4260, FieldType.FLOAT).setBaseOffset(0); + public static final Field IACPIDMULTTABLE = Field.create("IACPIDMULTTABLE", 4292, FieldType.INT8).setScale(0.05).setBaseOffset(0); + public static final Field IACPIDMULTLOADBINS = Field.create("IACPIDMULTLOADBINS", 4356, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IACPIDMULTRPMBINS = Field.create("IACPIDMULTRPMBINS", 4364, FieldType.INT8).setScale(10.0).setBaseOffset(0); + public static final Field SPARKDWELLRPMBINS = Field.create("SPARKDWELLRPMBINS", 4372, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SPARKDWELLVALUES = Field.create("SPARKDWELLVALUES", 4388, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field CLTIDLERPMBINS = Field.create("CLTIDLERPMBINS", 4404, FieldType.INT8).setScale(2.0).setBaseOffset(0); + public static final Field CLTIDLERPM = Field.create("CLTIDLERPM", 4420, FieldType.INT8).setScale(20.0).setBaseOffset(0); + public static final Field CLTTIMINGBINS = Field.create("CLTTIMINGBINS", 4436, FieldType.FLOAT).setBaseOffset(0); + public static final Field CLTTIMINGEXTRA = Field.create("CLTTIMINGEXTRA", 4468, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE1BINS = Field.create("SCRIPTCURVE1BINS", 4500, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE1 = Field.create("SCRIPTCURVE1", 4564, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE2BINS = Field.create("SCRIPTCURVE2BINS", 4628, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE2 = Field.create("SCRIPTCURVE2", 4692, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE3BINS = Field.create("SCRIPTCURVE3BINS", 4756, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE3 = Field.create("SCRIPTCURVE3", 4788, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE4BINS = Field.create("SCRIPTCURVE4BINS", 4820, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE4 = Field.create("SCRIPTCURVE4", 4852, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE5BINS = Field.create("SCRIPTCURVE5BINS", 4884, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE5 = Field.create("SCRIPTCURVE5", 4916, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE6BINS = Field.create("SCRIPTCURVE6BINS", 4948, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTCURVE6 = Field.create("SCRIPTCURVE6", 4980, FieldType.FLOAT).setBaseOffset(0); + public static final Field BAROCORRPRESSUREBINS = Field.create("BAROCORRPRESSUREBINS", 5012, FieldType.FLOAT).setBaseOffset(0); + public static final Field BAROCORRRPMBINS = Field.create("BAROCORRRPMBINS", 5028, FieldType.FLOAT).setBaseOffset(0); + public static final Field BAROCORRTABLE = Field.create("BAROCORRTABLE", 5044, FieldType.FLOAT).setBaseOffset(0); + public static final Field CRANKINGTPSCOEF = Field.create("CRANKINGTPSCOEF", 5108, FieldType.FLOAT).setBaseOffset(0); + public static final Field CRANKINGTPSBINS = Field.create("CRANKINGTPSBINS", 5140, FieldType.FLOAT).setBaseOffset(0); + public static final Field CRANKINGADVANCEBINS = Field.create("CRANKINGADVANCEBINS", 5172, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field CRANKINGADVANCE = Field.create("CRANKINGADVANCE", 5180, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field IACCOASTINGRPMBINS = Field.create("IACCOASTINGRPMBINS", 5188, FieldType.INT8).setScale(100.0).setBaseOffset(0); + public static final Field IACCOASTING = Field.create("IACCOASTING", 5204, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field WARNING_MESSAGE = Field.create("WARNING_MESSAGE", 5220, 120, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS1 = Field.create("FANCYOPTIONS1", 5340, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS2 = Field.create("FANCYOPTIONS2", 5341, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS3 = Field.create("FANCYOPTIONS3", 5342, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS4 = Field.create("FANCYOPTIONS4", 5343, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS5 = Field.create("FANCYOPTIONS5", 5344, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS6 = Field.create("FANCYOPTIONS6", 5345, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS7 = Field.create("FANCYOPTIONS7", 5346, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS8 = Field.create("FANCYOPTIONS8", 5347, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS9 = Field.create("FANCYOPTIONS9", 5348, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS10 = Field.create("FANCYOPTIONS10", 5349, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS11 = Field.create("FANCYOPTIONS11", 5350, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS12 = Field.create("FANCYOPTIONS12", 5351, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS13 = Field.create("FANCYOPTIONS13", 5352, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS14 = Field.create("FANCYOPTIONS14", 5353, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS15 = Field.create("FANCYOPTIONS15", 5354, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field FANCYOPTIONS16 = Field.create("FANCYOPTIONS16", 5355, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTTABLEOPENLOOP = Field.create("BOOSTTABLEOPENLOOP", 5356, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field BOOSTRPMBINS = Field.create("BOOSTRPMBINS", 5420, FieldType.INT8).setScale(100.0).setBaseOffset(0); + public static final Field BOOSTTABLECLOSEDLOOP = Field.create("BOOSTTABLECLOSEDLOOP", 5428, FieldType.INT8).setScale(2.0).setBaseOffset(0); + public static final Field BOOSTTPSBINS = Field.create("BOOSTTPSBINS", 5492, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field PEDALTOTPSTABLE = Field.create("PEDALTOTPSTABLE", 5500, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field PEDALTOTPSPEDALBINS = Field.create("PEDALTOTPSPEDALBINS", 5564, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field PEDALTOTPSRPMBINS = Field.create("PEDALTOTPSRPMBINS", 5572, FieldType.INT8).setScale(100.0).setBaseOffset(0); + public static final Field CLTCRANKINGCORRBINS = Field.create("CLTCRANKINGCORRBINS", 5580, FieldType.FLOAT).setBaseOffset(0); + public static final Field CLTCRANKINGCORR = Field.create("CLTCRANKINGCORR", 5612, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLEADVANCEBINS = Field.create("IDLEADVANCEBINS", 5644, FieldType.INT8).setScale(50.0).setBaseOffset(0); + public static final Field IDLEADVANCE = Field.create("IDLEADVANCE", 5652, FieldType.FLOAT).setBaseOffset(0); + public static final Field IDLEVERPMBINS = Field.create("IDLEVERPMBINS", 5684, FieldType.INT8).setScale(10.0).setBaseOffset(0); + public static final Field IDLEVELOADBINS = Field.create("IDLEVELOADBINS", 5688, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IDLEVETABLE = Field.create("IDLEVETABLE", 5692, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field LUASCRIPT = Field.create("LUASCRIPT", 5724, 8000, FieldType.STRING).setScale(1.0).setBaseOffset(0); + public static final Field CLTFUELCORRBINS = Field.create("CLTFUELCORRBINS", 13724, FieldType.FLOAT).setBaseOffset(0); + public static final Field CLTFUELCORR = Field.create("CLTFUELCORR", 13788, FieldType.FLOAT).setBaseOffset(0); + public static final Field IATFUELCORRBINS = Field.create("IATFUELCORRBINS", 13852, FieldType.FLOAT).setBaseOffset(0); + public static final Field IATFUELCORR = Field.create("IATFUELCORR", 13916, FieldType.FLOAT).setBaseOffset(0); + public static final Field CRANKINGFUELCOEF = Field.create("CRANKINGFUELCOEF", 13980, FieldType.FLOAT).setBaseOffset(0); + public static final Field CRANKINGFUELBINS = Field.create("CRANKINGFUELBINS", 14012, FieldType.FLOAT).setBaseOffset(0); + public static final Field CRANKINGCYCLECOEF = Field.create("CRANKINGCYCLECOEF", 14044, FieldType.FLOAT).setBaseOffset(0); + public static final Field CRANKINGCYCLEBINS = Field.create("CRANKINGCYCLEBINS", 14076, FieldType.FLOAT).setBaseOffset(0); + public static final Field CLTIDLECORRBINS = Field.create("CLTIDLECORRBINS", 14108, FieldType.FLOAT).setBaseOffset(0); + public static final Field CLTIDLECORR = Field.create("CLTIDLECORR", 14172, FieldType.FLOAT).setBaseOffset(0); + public static final Field MAFDECODING = Field.create("MAFDECODING", 14236, FieldType.FLOAT).setBaseOffset(0); + public static final Field MAFDECODINGBINS = Field.create("MAFDECODINGBINS", 14364, FieldType.FLOAT).setBaseOffset(0); + public static final Field IGNITIONIATCORRTABLE = Field.create("IGNITIONIATCORRTABLE", 14492, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field IGNITIONIATCORRTEMPBINS = Field.create("IGNITIONIATCORRTEMPBINS", 14556, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONIATCORRLOADBINS = Field.create("IGNITIONIATCORRLOADBINS", 14564, FieldType.INT8).setScale(5.0).setBaseOffset(0); + public static final Field INJECTIONPHASE = Field.create("INJECTIONPHASE", 14572, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field INJPHASELOADBINS = Field.create("INJPHASELOADBINS", 15084, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field INJPHASERPMBINS = Field.create("INJPHASERPMBINS", 15116, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TCUSOLENOIDTABLE = Field.create("TCUSOLENOIDTABLE", 15148, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MAPESTIMATETABLE = Field.create("MAPESTIMATETABLE", 15208, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field MAPESTIMATETPSBINS = Field.create("MAPESTIMATETPSBINS", 15720, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field MAPESTIMATERPMBINS = Field.create("MAPESTIMATERPMBINS", 15752, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VVTTABLE1 = Field.create("VVTTABLE1", 15784, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VVTTABLE1LOADBINS = Field.create("VVTTABLE1LOADBINS", 15848, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VVTTABLE1RPMBINS = Field.create("VVTTABLE1RPMBINS", 15864, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VVTTABLE2 = Field.create("VVTTABLE2", 15880, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VVTTABLE2LOADBINS = Field.create("VVTTABLE2LOADBINS", 15944, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VVTTABLE2RPMBINS = Field.create("VVTTABLE2RPMBINS", 15960, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONTABLE = Field.create("IGNITIONTABLE", 15976, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field IGNITIONLOADBINS = Field.create("IGNITIONLOADBINS", 16488, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNITIONRPMBINS = Field.create("IGNITIONRPMBINS", 16520, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VETABLE = Field.create("VETABLE", 16552, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field VELOADBINS = Field.create("VELOADBINS", 17064, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VERPMBINS = Field.create("VERPMBINS", 17096, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field LAMBDATABLE = Field.create("LAMBDATABLE", 17128, FieldType.INT8).setScale(0.006802721088435374).setBaseOffset(0); + public static final Field LAMBDALOADBINS = Field.create("LAMBDALOADBINS", 17384, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field LAMBDARPMBINS = Field.create("LAMBDARPMBINS", 17416, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field TPSTPSACCELTABLE = Field.create("TPSTPSACCELTABLE", 17448, FieldType.FLOAT).setBaseOffset(0); + public static final Field TPSTPSACCELFROMRPMBINS = Field.create("TPSTPSACCELFROMRPMBINS", 17704, FieldType.FLOAT).setBaseOffset(0); + public static final Field TPSTPSACCELTORPMBINS = Field.create("TPSTPSACCELTORPMBINS", 17736, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTTABLE1 = Field.create("SCRIPTTABLE1", 17768, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTTABLE1LOADBINS = Field.create("SCRIPTTABLE1LOADBINS", 18024, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLE1RPMBINS = Field.create("SCRIPTTABLE1RPMBINS", 18040, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLE2 = Field.create("SCRIPTTABLE2", 18056, FieldType.FLOAT).setBaseOffset(0); + public static final Field SCRIPTTABLE2LOADBINS = Field.create("SCRIPTTABLE2LOADBINS", 18312, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLE2RPMBINS = Field.create("SCRIPTTABLE2RPMBINS", 18328, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLE3 = Field.create("SCRIPTTABLE3", 18344, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLE3LOADBINS = Field.create("SCRIPTTABLE3LOADBINS", 18408, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLE3RPMBINS = Field.create("SCRIPTTABLE3RPMBINS", 18424, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLE4 = Field.create("SCRIPTTABLE4", 18440, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLE4LOADBINS = Field.create("SCRIPTTABLE4LOADBINS", 18520, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field SCRIPTTABLE4RPMBINS = Field.create("SCRIPTTABLE4RPMBINS", 18536, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNTRIMLOADBINS = Field.create("IGNTRIMLOADBINS", 18556, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNTRIMRPMBINS = Field.create("IGNTRIMRPMBINS", 18564, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNTRIMS1_TABLE = Field.create("IGNTRIMS1_TABLE", 18572, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS2_TABLE = Field.create("IGNTRIMS2_TABLE", 18588, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS3_TABLE = Field.create("IGNTRIMS3_TABLE", 18604, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS4_TABLE = Field.create("IGNTRIMS4_TABLE", 18620, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS5_TABLE = Field.create("IGNTRIMS5_TABLE", 18636, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS6_TABLE = Field.create("IGNTRIMS6_TABLE", 18652, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS7_TABLE = Field.create("IGNTRIMS7_TABLE", 18668, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS8_TABLE = Field.create("IGNTRIMS8_TABLE", 18684, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS9_TABLE = Field.create("IGNTRIMS9_TABLE", 18700, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS10_TABLE = Field.create("IGNTRIMS10_TABLE", 18716, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS11_TABLE = Field.create("IGNTRIMS11_TABLE", 18732, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field IGNTRIMS12_TABLE = Field.create("IGNTRIMS12_TABLE", 18748, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMLOADBINS = Field.create("FUELTRIMLOADBINS", 18764, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field FUELTRIMRPMBINS = Field.create("FUELTRIMRPMBINS", 18772, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field FUELTRIMS1_TABLE = Field.create("FUELTRIMS1_TABLE", 18780, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS2_TABLE = Field.create("FUELTRIMS2_TABLE", 18796, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS3_TABLE = Field.create("FUELTRIMS3_TABLE", 18812, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS4_TABLE = Field.create("FUELTRIMS4_TABLE", 18828, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS5_TABLE = Field.create("FUELTRIMS5_TABLE", 18844, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS6_TABLE = Field.create("FUELTRIMS6_TABLE", 18860, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS7_TABLE = Field.create("FUELTRIMS7_TABLE", 18876, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS8_TABLE = Field.create("FUELTRIMS8_TABLE", 18892, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS9_TABLE = Field.create("FUELTRIMS9_TABLE", 18908, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS10_TABLE = Field.create("FUELTRIMS10_TABLE", 18924, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS11_TABLE = Field.create("FUELTRIMS11_TABLE", 18940, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field FUELTRIMS12_TABLE = Field.create("FUELTRIMS12_TABLE", 18956, FieldType.INT8).setScale(0.2).setBaseOffset(0); + public static final Field CRANKINGFUELCOEFE100 = Field.create("CRANKINGFUELCOEFE100", 18972, FieldType.INT16).setScale(0.01).setBaseOffset(0); + public static final Field TCU_PCAIRMASSBINS = Field.create("TCU_PCAIRMASSBINS", 18988, FieldType.INT8).setScale(0.02).setBaseOffset(0); + public static final Field TCU_PCVALSR = Field.create("TCU_PCVALSR", 18996, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALSN = Field.create("TCU_PCVALSN", 19004, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALS1 = Field.create("TCU_PCVALS1", 19012, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALS2 = Field.create("TCU_PCVALS2", 19020, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALS3 = Field.create("TCU_PCVALS3", 19028, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALS4 = Field.create("TCU_PCVALS4", 19036, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALS12 = Field.create("TCU_PCVALS12", 19044, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALS23 = Field.create("TCU_PCVALS23", 19052, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALS34 = Field.create("TCU_PCVALS34", 19060, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALS21 = Field.create("TCU_PCVALS21", 19068, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALS32 = Field.create("TCU_PCVALS32", 19076, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_PCVALS43 = Field.create("TCU_PCVALS43", 19084, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_TCCTPSBINS = Field.create("TCU_TCCTPSBINS", 19092, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_TCCLOCKSPEED = Field.create("TCU_TCCLOCKSPEED", 19100, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_TCCUNLOCKSPEED = Field.create("TCU_TCCUNLOCKSPEED", 19108, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_32SPEEDBINS = Field.create("TCU_32SPEEDBINS", 19116, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_32VALS = Field.create("TCU_32VALS", 19124, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field THROTTLE2TRIMTABLE = Field.create("THROTTLE2TRIMTABLE", 19132, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field THROTTLE2TRIMTPSBINS = Field.create("THROTTLE2TRIMTPSBINS", 19168, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field THROTTLE2TRIMRPMBINS = Field.create("THROTTLE2TRIMRPMBINS", 19174, FieldType.INT8).setScale(100.0).setBaseOffset(0); + public static final Field MAXKNOCKRETARDTABLE = Field.create("MAXKNOCKRETARDTABLE", 19180, FieldType.INT8).setScale(0.25).setBaseOffset(0); + public static final Field MAXKNOCKRETARDLOADBINS = Field.create("MAXKNOCKRETARDLOADBINS", 19216, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field MAXKNOCKRETARDRPMBINS = Field.create("MAXKNOCKRETARDRPMBINS", 19222, FieldType.INT8).setScale(100.0).setBaseOffset(0); + public static final Field ALSTIMINGRETARDTABLE = Field.create("ALSTIMINGRETARDTABLE", 19228, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field ALSIGNRETARDLOADBINS = Field.create("ALSIGNRETARDLOADBINS", 19260, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALSIGNRETARDRPMBINS = Field.create("ALSIGNRETARDRPMBINS", 19268, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALSFUELADJUSTMENT = Field.create("ALSFUELADJUSTMENT", 19276, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field ALSFUELADJUSTMENTLOADBINS = Field.create("ALSFUELADJUSTMENTLOADBINS", 19308, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALSFUELADJUSTMENTRPMBINS = Field.create("ALSFUELADJUSTMENTRPMBINS", 19316, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALSIGNSKIPTABLE = Field.create("ALSIGNSKIPTABLE", 19324, FieldType.INT16).setScale(10.0).setBaseOffset(0); + public static final Field ALSIGNSKIPLOADBINS = Field.create("ALSIGNSKIPLOADBINS", 19356, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field ALSIGNSKIPRPMBINS = Field.create("ALSIGNSKIPRPMBINS", 19364, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS1_TABLE = Field.create("IGNBLENDS1_TABLE", 19372, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field IGNBLENDS1_LOADBINS = Field.create("IGNBLENDS1_LOADBINS", 19500, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS1_RPMBINS = Field.create("IGNBLENDS1_RPMBINS", 19516, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS1_BLENDPARAMETER = Field.create("IGNBLENDS1_BLENDPARAMETER", 19532, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS1_YAXISOVERRIDE = Field.create("IGNBLENDS1_YAXISOVERRIDE", 19533, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS1_BLENDBINS = Field.create("IGNBLENDS1_BLENDBINS", 19534, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field IGNBLENDS1_BLENDVALUES = Field.create("IGNBLENDS1_BLENDVALUES", 19550, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field IGNBLENDS1_ALIGNMENTFILL_AT_186 = Field.create("IGNBLENDS1_ALIGNMENTFILL_AT_186", 19558, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS2_TABLE = Field.create("IGNBLENDS2_TABLE", 19560, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field IGNBLENDS2_LOADBINS = Field.create("IGNBLENDS2_LOADBINS", 19688, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS2_RPMBINS = Field.create("IGNBLENDS2_RPMBINS", 19704, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS2_BLENDPARAMETER = Field.create("IGNBLENDS2_BLENDPARAMETER", 19720, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS2_YAXISOVERRIDE = Field.create("IGNBLENDS2_YAXISOVERRIDE", 19721, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS2_BLENDBINS = Field.create("IGNBLENDS2_BLENDBINS", 19722, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field IGNBLENDS2_BLENDVALUES = Field.create("IGNBLENDS2_BLENDVALUES", 19738, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field IGNBLENDS2_ALIGNMENTFILL_AT_186 = Field.create("IGNBLENDS2_ALIGNMENTFILL_AT_186", 19746, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS3_TABLE = Field.create("IGNBLENDS3_TABLE", 19748, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field IGNBLENDS3_LOADBINS = Field.create("IGNBLENDS3_LOADBINS", 19876, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS3_RPMBINS = Field.create("IGNBLENDS3_RPMBINS", 19892, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS3_BLENDPARAMETER = Field.create("IGNBLENDS3_BLENDPARAMETER", 19908, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS3_YAXISOVERRIDE = Field.create("IGNBLENDS3_YAXISOVERRIDE", 19909, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS3_BLENDBINS = Field.create("IGNBLENDS3_BLENDBINS", 19910, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field IGNBLENDS3_BLENDVALUES = Field.create("IGNBLENDS3_BLENDVALUES", 19926, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field IGNBLENDS3_ALIGNMENTFILL_AT_186 = Field.create("IGNBLENDS3_ALIGNMENTFILL_AT_186", 19934, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS4_TABLE = Field.create("IGNBLENDS4_TABLE", 19936, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field IGNBLENDS4_LOADBINS = Field.create("IGNBLENDS4_LOADBINS", 20064, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS4_RPMBINS = Field.create("IGNBLENDS4_RPMBINS", 20080, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS4_BLENDPARAMETER = Field.create("IGNBLENDS4_BLENDPARAMETER", 20096, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS4_YAXISOVERRIDE = Field.create("IGNBLENDS4_YAXISOVERRIDE", 20097, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field IGNBLENDS4_BLENDBINS = Field.create("IGNBLENDS4_BLENDBINS", 20098, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field IGNBLENDS4_BLENDVALUES = Field.create("IGNBLENDS4_BLENDVALUES", 20114, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field IGNBLENDS4_ALIGNMENTFILL_AT_186 = Field.create("IGNBLENDS4_ALIGNMENTFILL_AT_186", 20122, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS1_TABLE = Field.create("VEBLENDS1_TABLE", 20124, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field VEBLENDS1_LOADBINS = Field.create("VEBLENDS1_LOADBINS", 20252, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS1_RPMBINS = Field.create("VEBLENDS1_RPMBINS", 20268, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS1_BLENDPARAMETER = Field.create("VEBLENDS1_BLENDPARAMETER", 20284, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS1_YAXISOVERRIDE = Field.create("VEBLENDS1_YAXISOVERRIDE", 20285, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS1_BLENDBINS = Field.create("VEBLENDS1_BLENDBINS", 20286, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field VEBLENDS1_BLENDVALUES = Field.create("VEBLENDS1_BLENDVALUES", 20302, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field VEBLENDS1_ALIGNMENTFILL_AT_186 = Field.create("VEBLENDS1_ALIGNMENTFILL_AT_186", 20310, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS2_TABLE = Field.create("VEBLENDS2_TABLE", 20312, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field VEBLENDS2_LOADBINS = Field.create("VEBLENDS2_LOADBINS", 20440, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS2_RPMBINS = Field.create("VEBLENDS2_RPMBINS", 20456, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS2_BLENDPARAMETER = Field.create("VEBLENDS2_BLENDPARAMETER", 20472, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS2_YAXISOVERRIDE = Field.create("VEBLENDS2_YAXISOVERRIDE", 20473, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS2_BLENDBINS = Field.create("VEBLENDS2_BLENDBINS", 20474, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field VEBLENDS2_BLENDVALUES = Field.create("VEBLENDS2_BLENDVALUES", 20490, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field VEBLENDS2_ALIGNMENTFILL_AT_186 = Field.create("VEBLENDS2_ALIGNMENTFILL_AT_186", 20498, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS3_TABLE = Field.create("VEBLENDS3_TABLE", 20500, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field VEBLENDS3_LOADBINS = Field.create("VEBLENDS3_LOADBINS", 20628, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS3_RPMBINS = Field.create("VEBLENDS3_RPMBINS", 20644, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS3_BLENDPARAMETER = Field.create("VEBLENDS3_BLENDPARAMETER", 20660, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS3_YAXISOVERRIDE = Field.create("VEBLENDS3_YAXISOVERRIDE", 20661, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS3_BLENDBINS = Field.create("VEBLENDS3_BLENDBINS", 20662, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field VEBLENDS3_BLENDVALUES = Field.create("VEBLENDS3_BLENDVALUES", 20678, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field VEBLENDS3_ALIGNMENTFILL_AT_186 = Field.create("VEBLENDS3_ALIGNMENTFILL_AT_186", 20686, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS4_TABLE = Field.create("VEBLENDS4_TABLE", 20688, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field VEBLENDS4_LOADBINS = Field.create("VEBLENDS4_LOADBINS", 20816, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS4_RPMBINS = Field.create("VEBLENDS4_RPMBINS", 20832, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS4_BLENDPARAMETER = Field.create("VEBLENDS4_BLENDPARAMETER", 20848, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS4_YAXISOVERRIDE = Field.create("VEBLENDS4_YAXISOVERRIDE", 20849, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field VEBLENDS4_BLENDBINS = Field.create("VEBLENDS4_BLENDBINS", 20850, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field VEBLENDS4_BLENDVALUES = Field.create("VEBLENDS4_BLENDVALUES", 20866, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field VEBLENDS4_ALIGNMENTFILL_AT_186 = Field.create("VEBLENDS4_ALIGNMENTFILL_AT_186", 20874, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field THROTTLEESTIMATEEFFECTIVEAREABINS = Field.create("THROTTLEESTIMATEEFFECTIVEAREABINS", 20876, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field THROTTLEESTIMATEEFFECTIVEAREAVALUES = Field.create("THROTTLEESTIMATEEFFECTIVEAREAVALUES", 20900, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS1_TABLE = Field.create("BOOSTOPENLOOPBLENDS1_TABLE", 20924, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS1_LOADBINS = Field.create("BOOSTOPENLOOPBLENDS1_LOADBINS", 21052, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS1_RPMBINS = Field.create("BOOSTOPENLOOPBLENDS1_RPMBINS", 21068, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS1_BLENDPARAMETER = Field.create("BOOSTOPENLOOPBLENDS1_BLENDPARAMETER", 21084, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS1_YAXISOVERRIDE = Field.create("BOOSTOPENLOOPBLENDS1_YAXISOVERRIDE", 21085, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS1_BLENDBINS = Field.create("BOOSTOPENLOOPBLENDS1_BLENDBINS", 21086, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS1_BLENDVALUES = Field.create("BOOSTOPENLOOPBLENDS1_BLENDVALUES", 21102, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS1_ALIGNMENTFILL_AT_186 = Field.create("BOOSTOPENLOOPBLENDS1_ALIGNMENTFILL_AT_186", 21110, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS2_TABLE = Field.create("BOOSTOPENLOOPBLENDS2_TABLE", 21112, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS2_LOADBINS = Field.create("BOOSTOPENLOOPBLENDS2_LOADBINS", 21240, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS2_RPMBINS = Field.create("BOOSTOPENLOOPBLENDS2_RPMBINS", 21256, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS2_BLENDPARAMETER = Field.create("BOOSTOPENLOOPBLENDS2_BLENDPARAMETER", 21272, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS2_YAXISOVERRIDE = Field.create("BOOSTOPENLOOPBLENDS2_YAXISOVERRIDE", 21273, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS2_BLENDBINS = Field.create("BOOSTOPENLOOPBLENDS2_BLENDBINS", 21274, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS2_BLENDVALUES = Field.create("BOOSTOPENLOOPBLENDS2_BLENDVALUES", 21290, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field BOOSTOPENLOOPBLENDS2_ALIGNMENTFILL_AT_186 = Field.create("BOOSTOPENLOOPBLENDS2_ALIGNMENTFILL_AT_186", 21298, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS1_TABLE = Field.create("BOOSTCLOSEDLOOPBLENDS1_TABLE", 21300, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS1_LOADBINS = Field.create("BOOSTCLOSEDLOOPBLENDS1_LOADBINS", 21428, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS1_RPMBINS = Field.create("BOOSTCLOSEDLOOPBLENDS1_RPMBINS", 21444, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS1_BLENDPARAMETER = Field.create("BOOSTCLOSEDLOOPBLENDS1_BLENDPARAMETER", 21460, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS1_YAXISOVERRIDE = Field.create("BOOSTCLOSEDLOOPBLENDS1_YAXISOVERRIDE", 21461, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS1_BLENDBINS = Field.create("BOOSTCLOSEDLOOPBLENDS1_BLENDBINS", 21462, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS1_BLENDVALUES = Field.create("BOOSTCLOSEDLOOPBLENDS1_BLENDVALUES", 21478, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS1_ALIGNMENTFILL_AT_186 = Field.create("BOOSTCLOSEDLOOPBLENDS1_ALIGNMENTFILL_AT_186", 21486, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS2_TABLE = Field.create("BOOSTCLOSEDLOOPBLENDS2_TABLE", 21488, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS2_LOADBINS = Field.create("BOOSTCLOSEDLOOPBLENDS2_LOADBINS", 21616, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS2_RPMBINS = Field.create("BOOSTCLOSEDLOOPBLENDS2_RPMBINS", 21632, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS2_BLENDPARAMETER = Field.create("BOOSTCLOSEDLOOPBLENDS2_BLENDPARAMETER", 21648, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS2_YAXISOVERRIDE = Field.create("BOOSTCLOSEDLOOPBLENDS2_YAXISOVERRIDE", 21649, FieldType.INT8, gppwm_channel_e).setScale(1.0).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS2_BLENDBINS = Field.create("BOOSTCLOSEDLOOPBLENDS2_BLENDBINS", 21650, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS2_BLENDVALUES = Field.create("BOOSTCLOSEDLOOPBLENDS2_BLENDVALUES", 21666, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field BOOSTCLOSEDLOOPBLENDS2_ALIGNMENTFILL_AT_186 = Field.create("BOOSTCLOSEDLOOPBLENDS2_ALIGNMENTFILL_AT_186", 21674, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEP = Field.create("TCU_RANGEP", 21676, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGER = Field.create("TCU_RANGER", 21682, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEN = Field.create("TCU_RANGEN", 21688, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGED = Field.create("TCU_RANGED", 21694, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEM = Field.create("TCU_RANGEM", 21700, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEM3 = Field.create("TCU_RANGEM3", 21706, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEM2 = Field.create("TCU_RANGEM2", 21712, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEM1 = Field.create("TCU_RANGEM1", 21718, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEPLUS = Field.create("TCU_RANGEPLUS", 21724, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGEMINUS = Field.create("TCU_RANGEMINUS", 21730, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field TCU_RANGELOW = Field.create("TCU_RANGELOW", 21736, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field LAMBDAMAXDEVIATIONTABLE = Field.create("LAMBDAMAXDEVIATIONTABLE", 21742, FieldType.INT8).setScale(0.01).setBaseOffset(0); + public static final Field LAMBDAMAXDEVIATIONLOADBINS = Field.create("LAMBDAMAXDEVIATIONLOADBINS", 21758, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field LAMBDAMAXDEVIATIONRPMBINS = Field.create("LAMBDAMAXDEVIATIONRPMBINS", 21766, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field INJECTORSTAGINGTABLE = Field.create("INJECTORSTAGINGTABLE", 21774, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field INJECTORSTAGINGLOADBINS = Field.create("INJECTORSTAGINGLOADBINS", 21810, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field INJECTORSTAGINGRPMBINS = Field.create("INJECTORSTAGINGRPMBINS", 21822, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field WWCLTBINS = Field.create("WWCLTBINS", 21834, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field WWTAUCLTVALUES = Field.create("WWTAUCLTVALUES", 21842, FieldType.INT8).setScale(0.01).setBaseOffset(0); + public static final Field WWBETACLTVALUES = Field.create("WWBETACLTVALUES", 21850, FieldType.INT8).setScale(0.01).setBaseOffset(0); + public static final Field WWMAPBINS = Field.create("WWMAPBINS", 21858, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field WWTAUMAPVALUES = Field.create("WWTAUMAPVALUES", 21866, FieldType.INT8).setScale(0.01).setBaseOffset(0); + public static final Field WWBETAMAPVALUES = Field.create("WWBETAMAPVALUES", 21874, FieldType.INT8).setScale(0.01).setBaseOffset(0); + public static final Field HPFPLOBEPROFILEQUANTITYBINS = Field.create("HPFPLOBEPROFILEQUANTITYBINS", 21882, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field HPFPLOBEPROFILEANGLE = Field.create("HPFPLOBEPROFILEANGLE", 21898, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field HPFPDEADTIMEVOLTSBINS = Field.create("HPFPDEADTIMEVOLTSBINS", 21914, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HPFPDEADTIMEMS = Field.create("HPFPDEADTIMEMS", 21922, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field HPFPTARGET = Field.create("HPFPTARGET", 21938, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field HPFPTARGETLOADBINS = Field.create("HPFPTARGETLOADBINS", 22138, FieldType.INT16).setScale(0.1).setBaseOffset(0); + public static final Field HPFPTARGETRPMBINS = Field.create("HPFPTARGETRPMBINS", 22158, FieldType.INT8).setScale(50.0).setBaseOffset(0); + public static final Field HPFPCOMPENSATION = Field.create("HPFPCOMPENSATION", 22168, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field HPFPCOMPENSATIONLOADBINS = Field.create("HPFPCOMPENSATIONLOADBINS", 22268, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field HPFPCOMPENSATIONRPMBINS = Field.create("HPFPCOMPENSATIONRPMBINS", 22288, FieldType.INT8).setScale(50.0).setBaseOffset(0); + public static final Field KNOCKNOISERPMBINS = Field.create("KNOCKNOISERPMBINS", 22298, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field KNOCKBASENOISE = Field.create("KNOCKBASENOISE", 22330, FieldType.INT8).setScale(0.5).setBaseOffset(0); + public static final Field TPSTSPCORRVALUESBINS = Field.create("TPSTSPCORRVALUESBINS", 22346, FieldType.INT8).setScale(50.0).setBaseOffset(0); + public static final Field TPSTSPCORRVALUES = Field.create("TPSTSPCORRVALUES", 22350, FieldType.INT8).setScale(0.02).setBaseOffset(0); + public static final Field CLTREVLIMITRPMBINS = Field.create("CLTREVLIMITRPMBINS", 22354, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field CLTREVLIMITRPM = Field.create("CLTREVLIMITRPM", 22358, FieldType.INT16).setScale(1.0).setBaseOffset(0); + public static final Field FUELLEVELBINS = Field.create("FUELLEVELBINS", 22366, FieldType.INT16).setScale(0.001).setBaseOffset(0); + public static final Field FUELLEVELVALUES = Field.create("FUELLEVELVALUES", 22382, FieldType.INT8).setScale(1.0).setBaseOffset(0); + public static final Field DWELLVOLTAGECORRVOLTBINS = Field.create("DWELLVOLTAGECORRVOLTBINS", 22390, FieldType.INT8).setScale(0.1).setBaseOffset(0); + public static final Field DWELLVOLTAGECORRVALUES = Field.create("DWELLVOLTAGECORRVALUES", 22398, FieldType.INT8).setScale(0.02).setBaseOffset(0); + public static final Field ALIGNMENTFILL_AT_22406 = Field.create("ALIGNMENTFILL_AT_22406", 22406, FieldType.INT8).setScale(1.0).setBaseOffset(0); public static final Field[] VALUES = { ENGINETYPE, STARTBUTTONSUPPRESSONSTARTUPMS, @@ -3128,10 +3114,25 @@ public class Fields { MAXACRPM, MAXACTPS, MAXACCLT, - KNOCKNOISERPMBINS, + COMPRESSIONRATIO, + WASTEGATEPOSITIONMIN, + WASTEGATEPOSITIONMAX, + IDLEPOSITIONMIN, + IDLEPOSITIONMAX, + MAINRELAYPIN, + SDCARDCSPIN, + CANTXPIN, + CANRXPIN, + ETBEXPAVERAGELENGTH, + LAUNCHFUELADDERPERCENT, + ETBJAMTIMEOUT, + TACHOUTPUTPIN, + TACHOUTPUTPINMODE, + ACIDLEEXTRAOFFSET, + MANIDLEPOSITION, MULTISPARKMAXSPARKINGANGLE, MULTISPARKMAXEXTRASPARKCOUNT, - ALIGNMENTFILL_AT_50, + VVTCONTROLMINRPM, INJECTOR_FLOW, INJECTOR_BATTLAGCORRBINS, INJECTOR_BATTLAGCORR, @@ -3214,7 +3215,7 @@ public class Fields { TRIGGERSIMULATORRPM, CYLINDERSCOUNT, FIRINGORDER, - ALIGNMENTFILL_AT_441, + JUSTATEMPTEST, COMMUNITYCOMMSLEDPID, CYLINDERBORE, FUELALGORITHM, @@ -3228,10 +3229,10 @@ public class Fields { IGNITIONMODE, GAPTRACKINGLENGTHOVERRIDE, MAXIDLEVSS, - ALIGNMENTFILL_AT_463, + CAMDECODER2JZPRECISION, MINOILPRESSUREAFTERSTART, TIMINGMODE, - ALIGNMENTFILL_AT_467, + CANNBCTYPE, FIXEDMODETIMING, GLOBALTRIGGERANGLEOFFSET, ANALOGINPUTDIVIDERCOEFFICIENT, @@ -3241,13 +3242,7 @@ public class Fields { ACRPIN, ALIGNMENTFILL_AT_494, DRIVEWHEELREVPERKM, - CANNBCTYPE, - ALIGNMENTFILL_AT_501, CANSLEEPPERIODMS, - CAMDECODER2JZPRECISION, - JUSTATEMPTEST, - UNUSEDHERE333, - UNUSEDHERE334, BYFIRMWAREVERSION, TPS1_1ADCCHANNEL, VBATTADCCHANNEL, @@ -3294,14 +3289,15 @@ public class Fields { IDLE_STEPPERSTEPPIN, IDLE_SOLENOIDPINMODE, IDLE_ALIGNMENTFILL_AT_11, - MANIDLEPOSITION, KNOCKRETARDAGGRESSION, KNOCKRETARDREAPPLYRATE, ENGINESYNCCAM, - VSSFILTERRECIPROCAL, + SDCARDCSPINMODE, VSSGEARRATIO, + VSSFILTERRECIPROCAL, VSSTOOTHCOUNT, IDLEVEOVERRIDEMODE, + ALIGNMENTFILL_AT_621, L9779_CS, INJECTIONPINS1, INJECTIONPINS2, @@ -3348,53 +3344,39 @@ public class Fields { MAX31855SPIDEVICE, DEBUGTRIGGERSYNC, DIGITALPOTENTIOMETERSPIDEVICE, - ALIGNMENTFILL_AT_713, + BRAKEPEDALPINMODE, MC33972_CS, MC33972_CSPINMODE, AUXFASTSENSOR1_ADCCHANNEL, TPS1_2ADCCHANNEL, TPS2_2ADCCHANNEL, THROTTLEPEDALPOSITIONSECONDADCCHANNEL, - FUELLEVELVALUES, AFR_TYPE, MC33810_CS1, + ALIGNMENTFILL_AT_714, IDLE_ANTIWINDUPFREQ, TRIGGERINPUTPINS1, TRIGGERINPUTPINS2, MC33_T_MIN_BOOST, HIP9011CSPINMODE, - ALIGNMENTFILL_AT_743, - TACHOUTPUTPIN, - TACHOUTPUTPINMODE, - ALIGNMENTFILL_AT_747, - MAINRELAYPIN, - SDCARDCSPIN, - CANTXPIN, - CANRXPIN, THROTTLEPEDALUPPINMODE, - ACIDLEEXTRAOFFSET, FINALGEARRATIO, + TUNERSTUDIOSERIALSPEED, TCUINPUTSPEEDSENSORPIN, TCUINPUTSPEEDSENSORTEETH, - ALIGNMENTFILL_AT_763, - WASTEGATEPOSITIONMIN, - WASTEGATEPOSITIONMAX, - IDLEPOSITIONMIN, - IDLEPOSITIONMAX, - TUNERSTUDIOSERIALSPEED, - COMPRESSIONRATIO, + ALIGNMENTFILL_AT_735, TRIGGERSIMULATORPINS1, TRIGGERSIMULATORPINS2, FORDINJECTORSMALLPULSESLOPE, TRIGGERSIMULATORPINMODES1, TRIGGERSIMULATORPINMODES2, MAF2ADCCHANNEL, - ALIGNMENTFILL_AT_789, + ALIGNMENTFILL_AT_745, O2HEATERPIN, O2HEATERPINMODETODO, LAMBDAPROTECTIONMINRPM, LAMBDAPROTECTIONMINLOAD, - ALIGNMENTFILL_AT_795, + ALIGNMENTFILL_AT_751, IS_ENABLED_SPI_1, IS_ENABLED_SPI_2, IS_ENABLED_SPI_3, @@ -3431,21 +3413,19 @@ public class Fields { LOGICANALYZERPINS3, LOGICANALYZERPINS4, MAINRELAYPINMODE, - ALIGNMENTFILL_AT_809, + ALIGNMENTFILL_AT_765, HIP9011CSPIN, HIP9011INTHOLDPIN, HIP9011INTHOLDPINMODE, - ALIGNMENTFILL_AT_815, + ALIGNMENTFILL_AT_771, VERBOSECANBASEADDRESS, MC33_HVOLT, MINIMUMBOOSTCLOSEDLOOPMAP, ACFANPIN, ACFANPINMODE, L9779SPIDEVICE, - DWELLVOLTAGECORRVOLTBINS, IMUTYPE, - DWELLVOLTAGECORRVALUES, - ALIGNMENTFILL_AT_843, + ALIGNMENTFILL_AT_783, VEHICLEWEIGHT, IDLEPIDRPMUPPERLIMIT, APPLYNONLINEARBELOWPULSE, @@ -3471,14 +3451,14 @@ public class Fields { ETBMAXIMUMPOSITION, SDCARDLOGFREQUENCY, IDLEPOSITIONCHANNEL, - ALIGNMENTFILL_AT_887, + ALIGNMENTFILL_AT_827, DEBUGMAPAVERAGING, STARTERRELAYDISABLEPIN, STARTERRELAYDISABLEPINMODE, - ALIGNMENTFILL_AT_893, + ALIGNMENTFILL_AT_833, SECONDSOLENOIDPIN, STARTSTOPBUTTONPIN, - ALIGNMENTFILL_AT_898, + ALIGNMENTFILL_AT_838, MAPMINBUFFERLENGTH, IDLEPIDDEACTIVATIONTPSTHRESHOLD, STEPPERPARKINGEXTRASTEPS, @@ -3488,13 +3468,13 @@ public class Fields { STARTCRANKINGDURATION, TRIGGERERRORPIN, TRIGGERERRORPINMODE, - ALIGNMENTFILL_AT_919, + ALIGNMENTFILL_AT_859, ACRELAYPIN, LAMBDAPROTECTIONMINTPS, LAMBDAPROTECTIONTIMEOUT, LAMBDAPROTECTIONRESTORERPM, ACRELAYPINMODE, - ALIGNMENTFILL_AT_926, + ALIGNMENTFILL_AT_866, SCRIPTSETTING1, SCRIPTSETTING2, SCRIPTSETTING3, @@ -3516,7 +3496,7 @@ public class Fields { CONSOLEUARTDEVICE, SENSORCHARTMODE, MAFSENSORTYPE, - ALIGNMENTFILL_AT_983, + ALIGNMENTFILL_AT_923, CLUTCHUPPININVERTED, CLUTCHDOWNPININVERTED, USEHBRIDGESTODRIVEIDLESTEPPER, @@ -3559,7 +3539,7 @@ public class Fields { ETBIO2_DISABLEPIN, BOOSTCONTROLPIN, BOOSTCONTROLPINMODE, - ALIGNMENTFILL_AT_1007, + ALIGNMENTFILL_AT_947, ALSACTIVATEPIN, LAUNCHACTIVATEPIN, BOOSTPID_PFACTOR, @@ -3575,7 +3555,7 @@ public class Fields { BOOSTPWMFREQUENCY, LAUNCHACTIVATIONMODE, ANTILAGACTIVATIONMODE, - ALIGNMENTFILL_AT_1042, + ALIGNMENTFILL_AT_982, LAUNCHSPEEDTHRESHOLD, LAUNCHRPMWINDOW, LAUNCHSPARKSKIPPERCENT, @@ -3624,12 +3604,11 @@ public class Fields { ETBFUNCTIONS1, ETBFUNCTIONS2, DRV8860SPIDEVICE, - ALIGNMENTFILL_AT_1227, + ALIGNMENTFILL_AT_1167, DRV8860_CS, DRV8860_CSPINMODE, - ALIGNMENTFILL_AT_1231, + ALIGNMENTFILL_AT_1171, DRV8860_MISO, - FUELLEVELBINS, LUAOUTPUTPINS1, LUAOUTPUTPINS2, LUAOUTPUTPINS3, @@ -3638,7 +3617,7 @@ public class Fields { LUAOUTPUTPINS6, LUAOUTPUTPINS7, LUAOUTPUTPINS8, - ALIGNMENTFILL_AT_1266, + ALIGNMENTFILL_AT_1190, VVTOFFSETS1, VVTOFFSETS2, VVTOFFSETS3, @@ -3690,12 +3669,12 @@ public class Fields { TWOSTROKE, SKIPPEDWHEELONCAM, HIPOUTPUTCHANNEL, - ALIGNMENTFILL_AT_1389, + ALIGNMENTFILL_AT_1313, ACSWITCH, VREFADCCHANNEL, ETBNEUTRALPOSITION, IDLEMODE, - ALIGNMENTFILL_AT_1395, + ALIGNMENTFILL_AT_1319, ISINJECTIONENABLED, ISIGNITIONENABLED, ISCYLINDERCLEANUPENABLED, @@ -3766,10 +3745,10 @@ public class Fields { TPS2MAX, STARTERCONTROLPIN, STARTSTOPBUTTONMODE, - ALIGNMENTFILL_AT_1507, + ALIGNMENTFILL_AT_1431, MC33816_FLAG0, TACHPULSEPERREV, - ALIGNMENTFILL_AT_1511, + ALIGNMENTFILL_AT_1435, MAPERRORDETECTIONTOOLOW, MAPERRORDETECTIONTOOHIGH, MULTISPARKSPARKDURATION, @@ -3818,7 +3797,7 @@ public class Fields { COASTINGFUELCUTVSSLOW, COASTINGFUELCUTVSSHIGH, NOFUELTRIMAFTERDFCOTIME, - ALIGNMENTFILL_AT_1594, + ALIGNMENTFILL_AT_1518, TPSACCELENRICHMENTTHRESHOLD, AUXSPEEDSENSORINPUTPIN1, AUXSPEEDSENSORINPUTPIN2, @@ -3854,7 +3833,7 @@ public class Fields { LAMBDAPROTECTIONRESTORETPS, LAMBDAPROTECTIONRESTORELOAD, LAUNCHACTIVATEPINMODE, - ALIGNMENTFILL_AT_1651, + ALIGNMENTFILL_AT_1575, CAN2TXPIN, CAN2RXPIN, STARTERCONTROLPINMODE, @@ -3863,7 +3842,7 @@ public class Fields { INJECTORPRESSURETYPE, HPFPVALVEPIN, HPFPVALVEPINMODE, - ALIGNMENTFILL_AT_1663, + ALIGNMENTFILL_AT_1587, BOOSTCUTPRESSURE, TCHARGEBINS, TCHARGEVALUES, @@ -3875,8 +3854,6 @@ public class Fields { VVTPINS2, VVTPINS3, VVTPINS4, - SDCARDCSPINMODE, - ALIGNMENTFILL_AT_1725, CRANKINGIACPOSITION, TCHARGEMINRPMMINTPS, TCHARGEMINRPMMAXTPS, @@ -3975,8 +3952,6 @@ public class Fields { MC33816_RSTB, MC33816_DRIVEN, BRAKEPEDALPIN, - BRAKEPEDALPINMODE, - ALIGNMENTFILL_AT_2153, AUXPID1_PFACTOR, AUXPID1_IFACTOR, AUXPID1_DFACTOR, @@ -4007,29 +3982,25 @@ public class Fields { OILPRESSURE_V2, OILPRESSURE_VALUE2, ACCELEROMETERSPIDEVICE, - ALIGNMENTFILL_AT_2257, + ALIGNMENTFILL_AT_2173, FAN2PIN, FAN2ONTEMPERATURE, FAN2OFFTEMPERATURE, STEPPERENABLEPIN, TLE8888_CS, TLE8888_CSPINMODE, - ALIGNMENTFILL_AT_2267, + ALIGNMENTFILL_AT_2183, MC33816_CS, - ALIGNMENTFILL_AT_2270, + ALIGNMENTFILL_AT_2186, AUXFREQUENCYFILTER, - VVTCONTROLMINRPM, SENTINPUTPINS1, - LAUNCHFUELADDERPERCENT, - ETBJAMTIMEOUT, - ETBEXPAVERAGELENGTH, - UNUSED645646, COASTINGFUELCUTRPMHIGH, COASTINGFUELCUTRPMLOW, COASTINGFUELCUTTPS, COASTINGFUELCUTCLT, PIDEXTRAFORLOWRPM, COASTINGFUELCUTMAP, + ALIGNMENTFILL_AT_2206, HIGHPRESSUREFUEL_HWCHANNEL, HIGHPRESSUREFUEL_ALIGNMENTFILL_AT_1, HIGHPRESSUREFUEL_V1, @@ -4042,8 +4013,6 @@ public class Fields { LOWPRESSUREFUEL_VALUE1, LOWPRESSUREFUEL_V2, LOWPRESSUREFUEL_VALUE2, - CLTREVLIMITRPMBINS, - CLTREVLIMITRPM, SCRIPTCURVENAME1, SCRIPTCURVENAME2, SCRIPTCURVENAME3, @@ -4067,8 +4036,6 @@ public class Fields { TCHARGEAIRFLOWMAX, TCHARGEAIRINCRLIMIT, TCHARGEAIRDECRLIMIT, - TCHARGEMODE, - ALIGNMENTFILL_AT_2661, HIP9011GAIN, ETB_ITERMMIN, ETB_ITERMMAX, @@ -4112,7 +4079,7 @@ public class Fields { DISABLEFAN1ATSPEED, DISABLEFAN2ATSPEED, CANVSSNBCTYPE, - ALIGNMENTFILL_AT_2762, + ALIGNMENTFILL_AT_2654, GPPWM1_PIN, GPPWM1_DUTYIFERROR, GPPWM1_ALIGNMENTFILL_AT_3, @@ -4179,8 +4146,7 @@ public class Fields { TCU_SOLENOID_MODE4, TCU_SOLENOID_MODE5, TCU_SOLENOID_MODE6, - KNOCKBASENOISE, - ALIGNMENTFILL_AT_3239, + ALIGNMENTFILL_AT_3115, TRIGGERGAPOVERRIDEFROM1, TRIGGERGAPOVERRIDEFROM2, TRIGGERGAPOVERRIDEFROM3, @@ -4220,31 +4186,20 @@ public class Fields { MAXCAMPHASERESOLVERPM, DFCODELAY, ACDELAY, - ALIGNMENTFILL_AT_3387, + TCHARGEMODE, FORDINJECTORSMALLPULSEBREAKPOINT, - TPSTSPCORRVALUES, ETBJAMINTEGRATORLIMIT, HPFPCAMLOBES, HPFPCAM, AUXILIARYSETTING1, HPFPMINANGLE, - ALIGNMENTFILL_AT_3399, + ALIGNMENTFILL_AT_3271, HPFPPUMPVOLUME, HPFPACTIVATIONANGLE, ISSFILTERRECIPROCAL, HPFPPIDP, HPFPPIDI, HPFPTARGETDECAY, - HPFPLOBEPROFILEQUANTITYBINS, - HPFPLOBEPROFILEANGLE, - HPFPDEADTIMEVOLTSBINS, - HPFPDEADTIMEMS, - HPFPTARGET, - HPFPTARGETLOADBINS, - HPFPTARGETRPMBINS, - HPFPCOMPENSATION, - HPFPCOMPENSATIONLOADBINS, - HPFPCOMPENSATIONRPMBINS, STEPPER_RAW_OUTPUT1, STEPPER_RAW_OUTPUT2, STEPPER_RAW_OUTPUT3, @@ -4260,12 +4215,6 @@ public class Fields { GEARRATIO9, GEARRATIO10, VVTACTIVATIONDELAYMS, - WWCLTBINS, - WWTAUCLTVALUES, - WWBETACLTVALUES, - WWMAPBINS, - WWTAUMAPVALUES, - WWBETAMAPVALUES, TORQUETABLE, TORQUERPMBINS, TORQUELOADBINS, @@ -4286,28 +4235,27 @@ public class Fields { AUXLINEAR2_VALUE2, TCU_TCC_ONOFF_SOLENOID, TCU_TCC_ONOFF_SOLENOID_MODE, - ALIGNMENTFILL_AT_4011, + ALIGNMENTFILL_AT_3419, TCU_TCC_PWM_SOLENOID, TCU_TCC_PWM_SOLENOID_MODE, - ALIGNMENTFILL_AT_4015, + ALIGNMENTFILL_AT_3423, TCU_TCC_PWM_SOLENOID_FREQ, TCU_PC_SOLENOID_PIN, TCU_PC_SOLENOID_PIN_MODE, - ALIGNMENTFILL_AT_4021, + ALIGNMENTFILL_AT_3429, TCU_PC_SOLENOID_FREQ, TCU_32_SOLENOID_PIN, TCU_32_SOLENOID_PIN_MODE, - ALIGNMENTFILL_AT_4027, + ALIGNMENTFILL_AT_3435, TCU_32_SOLENOID_FREQ, ACRPIN2, ETBMINIMUMPOSITION, TUNEHIDINGKEY, VINNUMBER, - ALIGNMENTFILL_AT_4055, + ALIGNMENTFILL_AT_3463, HIGHSPEEDOFFSETS, - UNUSED3124141, FUELPRESSURESENSORMODE, - ALIGNMENTFILL_AT_4125, + ALIGNMENTFILL_AT_3529, LUADIGITALINPUTPINS1, LUADIGITALINPUTPINS2, LUADIGITALINPUTPINS3, @@ -4316,7 +4264,6 @@ public class Fields { LUADIGITALINPUTPINS6, LUADIGITALINPUTPINS7, LUADIGITALINPUTPINS8, - TPSTSPCORRVALUESBINS, ALSMINRPM, ALSMAXRPM, ALSMAXDURATION, @@ -4355,7 +4302,7 @@ public class Fields { BENCHTESTOFFTIME, BOOSTCUTPRESSUREHYST, GEARBASEDOPENLOOPBOOSTADDER, - ALIGNMENTFILL_AT_4211, + ALIGNMENTFILL_AT_3611, BENCHTESTCOUNT, IACBYTPSHOLDTIME, IACBYTPSDECAYTIME, @@ -4372,7 +4319,7 @@ public class Fields { TCU_RANGEINPUTMODE5, TCU_RANGEINPUTMODE6, CANVSSSCALING, - ALIGNMENTFILL_AT_4238, + ALIGNMENTFILL_AT_3638, OILTEMPSENSOR_TEMPC_1, OILTEMPSENSOR_TEMPC_2, OILTEMPSENSOR_TEMPC_3, @@ -4433,7 +4380,7 @@ public class Fields { MAXINJECTORDUTYINSTANT, MAXINJECTORDUTYSUSTAINED, MAXINJECTORDUTYSUSTAINEDTIMEOUT, - ALIGNMENTFILL_AT_4455, + ALIGNMENTFILL_AT_3855, INJECTIONPINSSTAGE21, INJECTIONPINSSTAGE22, INJECTIONPINSSTAGE23, @@ -4468,7 +4415,7 @@ public class Fields { SPI6SCKMODE, SPI6MOSIMODE, UNUSEDOFTENCHANGESDURINGFIRMWAREUPDATE, - ALIGNMENTFILL_AT_4706, + ALIGNMENTFILL_AT_4226, ETBBIASBINS, ETBBIASVALUES, IACPIDMULTTABLE, @@ -4518,7 +4465,6 @@ public class Fields { FANCYOPTIONS14, FANCYOPTIONS15, FANCYOPTIONS16, - UNUSEDGAPINCALIBRATION, BOOSTTABLEOPENLOOP, BOOSTRPMBINS, BOOSTTABLECLOSEDLOOP, @@ -4763,6 +4709,32 @@ public class Fields { INJECTORSTAGINGTABLE, INJECTORSTAGINGLOADBINS, INJECTORSTAGINGRPMBINS, - ALIGNMENTFILL_AT_22426, + WWCLTBINS, + WWTAUCLTVALUES, + WWBETACLTVALUES, + WWMAPBINS, + WWTAUMAPVALUES, + WWBETAMAPVALUES, + HPFPLOBEPROFILEQUANTITYBINS, + HPFPLOBEPROFILEANGLE, + HPFPDEADTIMEVOLTSBINS, + HPFPDEADTIMEMS, + HPFPTARGET, + HPFPTARGETLOADBINS, + HPFPTARGETRPMBINS, + HPFPCOMPENSATION, + HPFPCOMPENSATIONLOADBINS, + HPFPCOMPENSATIONRPMBINS, + KNOCKNOISERPMBINS, + KNOCKBASENOISE, + TPSTSPCORRVALUESBINS, + TPSTSPCORRVALUES, + CLTREVLIMITRPMBINS, + CLTREVLIMITRPM, + FUELLEVELBINS, + FUELLEVELVALUES, + DWELLVOLTAGECORRVOLTBINS, + DWELLVOLTAGECORRVALUES, + ALIGNMENTFILL_AT_22406, }; }